1af0996ceSBarry Smith #include <petsc/private/snesimpl.h> /*I "petscsnes.h" I*/
2c4aff060SBarry Smith
3*cc4c1da9SBarry Smith /*@
4f6dfbefdSBarry Smith SNESPythonSetType - Initialize a `SNES` object implemented in Python.
5c4aff060SBarry Smith
6c3339decSBarry Smith Collective
7c4aff060SBarry Smith
8d8d19677SJose E. Roman Input Parameters:
9f6dfbefdSBarry Smith + snes - the nonlinear solver (`SNES`) context.
10c4aff060SBarry Smith - pyname - full dotted Python name [package].module[.{class|function}]
11c4aff060SBarry Smith
12c4aff060SBarry Smith Options Database Key:
1367b8a455SSatish Balay . -snes_python_type <pyname> - python class
14c4aff060SBarry Smith
15c4aff060SBarry Smith Level: intermediate
16c4aff060SBarry Smith
17420bcc1bSBarry Smith .seealso: [](ch_snes), `SNES`, `SNESCreate()`, `SNESSetType()`, `SNESPYTHON`, `PetscPythonInitialize()`, `SNESPythonGetType()`
18c4aff060SBarry Smith @*/
SNESPythonSetType(SNES snes,const char pyname[])19d71ae5a4SJacob Faibussowitsch PetscErrorCode SNESPythonSetType(SNES snes, const char pyname[])
20d71ae5a4SJacob Faibussowitsch {
21c4aff060SBarry Smith PetscFunctionBegin;
220700a824SBarry Smith PetscValidHeaderSpecific(snes, SNES_CLASSID, 1);
234f572ea9SToby Isaac PetscAssertPointer(pyname, 2);
24cac4c232SBarry Smith PetscTryMethod(snes, "SNESPythonSetType_C", (SNES, const char[]), (snes, pyname));
253ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS);
26c4aff060SBarry Smith }
27ebead697SStefano Zampini
28*cc4c1da9SBarry Smith /*@
29420bcc1bSBarry Smith SNESPythonGetType - Get the type of a `SNES` object implemented in Python set with `SNESPythonSetType()`
30ebead697SStefano Zampini
3120f4b53cSBarry Smith Not Collective
32ebead697SStefano Zampini
33ebead697SStefano Zampini Input Parameter:
34f6dfbefdSBarry Smith . snes - the nonlinear solver (`SNES`) context.
35ebead697SStefano Zampini
36ebead697SStefano Zampini Output Parameter:
37ebead697SStefano Zampini . pyname - full dotted Python name [package].module[.{class|function}]
38ebead697SStefano Zampini
39ebead697SStefano Zampini Level: intermediate
40ebead697SStefano Zampini
41420bcc1bSBarry Smith .seealso: [](ch_snes), `SNES`, `SNESCreate()`, `SNESSetType()`, `SNESPYTHON`, `PetscPythonInitialize()`, `SNESPythonSetType()`
42ebead697SStefano Zampini @*/
SNESPythonGetType(SNES snes,const char * pyname[])43d71ae5a4SJacob Faibussowitsch PetscErrorCode SNESPythonGetType(SNES snes, const char *pyname[])
44d71ae5a4SJacob Faibussowitsch {
45ebead697SStefano Zampini PetscFunctionBegin;
46ebead697SStefano Zampini PetscValidHeaderSpecific(snes, SNES_CLASSID, 1);
474f572ea9SToby Isaac PetscAssertPointer(pyname, 2);
48ebead697SStefano Zampini PetscUseMethod(snes, "SNESPythonGetType_C", (SNES, const char *[]), (snes, pyname));
493ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS);
50ebead697SStefano Zampini }
51