xref: /petsc/src/tao/python/pythontao.c (revision a82e8c82ed9474375a7f877f23dfa96948657643)
1*a82e8c82SStefano Zampini #include <petsc/private/taoimpl.h>          /*I "petsctao.h" I*/
2*a82e8c82SStefano Zampini 
3*a82e8c82SStefano Zampini /*@C
4*a82e8c82SStefano Zampini    TaoPythonSetType - Initialize a Tao object implemented in Python.
5*a82e8c82SStefano Zampini 
6*a82e8c82SStefano Zampini    Collective on tao
7*a82e8c82SStefano Zampini 
8*a82e8c82SStefano Zampini    Input Parameters:
9*a82e8c82SStefano Zampini +  tao - the optimation solver (Tao) context.
10*a82e8c82SStefano Zampini -  pyname - full dotted Python name [package].module[.{class|function}]
11*a82e8c82SStefano Zampini 
12*a82e8c82SStefano Zampini    Options Database Key:
13*a82e8c82SStefano Zampini .  -tao_python_type <pyname>
14*a82e8c82SStefano Zampini 
15*a82e8c82SStefano Zampini    Level: intermediate
16*a82e8c82SStefano Zampini 
17*a82e8c82SStefano Zampini .seealso: TaoCreate(), TaoSetType(), TAOPYTHON, PetscPythonInitialize()
18*a82e8c82SStefano Zampini @*/
19*a82e8c82SStefano Zampini PetscErrorCode TaoPythonSetType(Tao tao, const char pyname[])
20*a82e8c82SStefano Zampini {
21*a82e8c82SStefano Zampini   PetscErrorCode ierr;
22*a82e8c82SStefano Zampini 
23*a82e8c82SStefano Zampini   PetscFunctionBegin;
24*a82e8c82SStefano Zampini   PetscValidHeaderSpecific(tao,TAO_CLASSID,1);
25*a82e8c82SStefano Zampini   PetscValidCharPointer(pyname,2);
26*a82e8c82SStefano Zampini   ierr = PetscTryMethod(tao,"TaoPythonSetType_C",(Tao,const char[]),(tao,pyname));CHKERRQ(ierr);
27*a82e8c82SStefano Zampini   PetscFunctionReturn(0);
28*a82e8c82SStefano Zampini }
29*a82e8c82SStefano Zampini 
30