xref: /petsc/src/dm/impls/da/dapf.c (revision 9566063d113dddea24716c546802770db7481bc0)
147c6ae99SBarry Smith 
2af0996ceSBarry Smith #include <petsc/private/dmdaimpl.h>    /*I   "petscdmda.h"   I*/
347c6ae99SBarry Smith 
447c6ae99SBarry Smith /*@C
5aa219208SBarry Smith    DMDACreatePF - Creates an appropriately dimensioned PF mathematical function object
6aa219208SBarry Smith       from a DMDA.
747c6ae99SBarry Smith 
8d083f849SBarry Smith    Collective on da
947c6ae99SBarry Smith 
1047c6ae99SBarry Smith    Input Parameter:
1147c6ae99SBarry Smith .  da - initial distributed array
1247c6ae99SBarry Smith 
1347c6ae99SBarry Smith    Output Parameter:
1447c6ae99SBarry Smith .  pf - the mathematical function object
1547c6ae99SBarry Smith 
1647c6ae99SBarry Smith    Level: advanced
1747c6ae99SBarry Smith 
18f5f57ec0SBarry Smith    Not supported from Fortran
1947c6ae99SBarry Smith 
20aa219208SBarry Smith .seealso: DMDACreate1d(), DMDACreate2d(), DMDACreate3d(), DMDestroy(), DMCreateGlobalVector()
2147c6ae99SBarry Smith @*/
227087cfbeSBarry Smith PetscErrorCode  DMDACreatePF(DM da,PF *pf)
2347c6ae99SBarry Smith {
2447c6ae99SBarry Smith   DM_DA          *dd = (DM_DA*)da->data;
2547c6ae99SBarry Smith 
2647c6ae99SBarry Smith   PetscFunctionBegin;
27a9a02de4SBarry Smith   PetscValidHeaderSpecificType(da,DM_CLASSID,1,DMDA);
2847c6ae99SBarry Smith   PetscValidPointer(pf,2);
29*9566063dSJacob Faibussowitsch   PetscCall(PFCreate(PetscObjectComm((PetscObject)da),da->dim,dd->w,pf));
3047c6ae99SBarry Smith   PetscFunctionReturn(0);
3147c6ae99SBarry Smith }
32