xref: /petsc/src/dm/impls/da/dapf.c (revision d083f849a86f1f43e18d534ee43954e2786cb29a)
147c6ae99SBarry Smith 
2af0996ceSBarry Smith #include <petsc/private/dmdaimpl.h>    /*I   "petscdmda.h"   I*/
347c6ae99SBarry Smith 
447c6ae99SBarry Smith 
547c6ae99SBarry Smith /*@C
6aa219208SBarry Smith    DMDACreatePF - Creates an appropriately dimensioned PF mathematical function object
7aa219208SBarry Smith       from a DMDA.
847c6ae99SBarry Smith 
9*d083f849SBarry Smith    Collective on da
1047c6ae99SBarry Smith 
1147c6ae99SBarry Smith    Input Parameter:
1247c6ae99SBarry Smith .  da - initial distributed array
1347c6ae99SBarry Smith 
1447c6ae99SBarry Smith    Output Parameter:
1547c6ae99SBarry Smith .  pf - the mathematical function object
1647c6ae99SBarry Smith 
1747c6ae99SBarry Smith    Level: advanced
1847c6ae99SBarry Smith 
19f5f57ec0SBarry Smith    Not supported from Fortran
2047c6ae99SBarry Smith 
21aa219208SBarry Smith .seealso: DMDACreate1d(), DMDACreate2d(), DMDACreate3d(), DMDestroy(), DMCreateGlobalVector()
2247c6ae99SBarry Smith @*/
237087cfbeSBarry Smith PetscErrorCode  DMDACreatePF(DM da,PF *pf)
2447c6ae99SBarry Smith {
2547c6ae99SBarry Smith   PetscErrorCode ierr;
2647c6ae99SBarry Smith   DM_DA          *dd = (DM_DA*)da->data;
2747c6ae99SBarry Smith 
2847c6ae99SBarry Smith   PetscFunctionBegin;
29a9a02de4SBarry Smith   PetscValidHeaderSpecificType(da,DM_CLASSID,1,DMDA);
3047c6ae99SBarry Smith   PetscValidPointer(pf,2);
31c73cfb54SMatthew G. Knepley   ierr = PFCreate(PetscObjectComm((PetscObject)da),da->dim,dd->w,pf);CHKERRQ(ierr);
3247c6ae99SBarry Smith   PetscFunctionReturn(0);
3347c6ae99SBarry Smith }
3447c6ae99SBarry Smith 
3547c6ae99SBarry Smith 
36