Actual source code: taosolverregi.c

  1: #define TAOSOLVER_DLL

  3: #include "include/private/taosolver_impl.h" /*I "taosolver.h" I*/









 32: /* 
 33:    Offset the convergence reasons so negative number represent diverged and
 34:    positive represent converged.
 35: */
 36: const char *TaoSolverTerminationReasons_Shifted[] = {
 37:     "DIVERGED_USER",
 38:     "DIVERGED_TR_REDUCTION",
 39:     "DIVERGED_LS_FAILURE",
 40:     "DIVERGED_MAXFCN",
 41:     "DIVERGED_NAN",
 42:     "DIVERGED_MAXITS",
 43:     "DIVERGED_FUNCTION_DOMAIN",
 44:  
 45:     "CONTINUE_ITERATING",
 46:     
 47:     "CONVERGED_FATOL",
 48:     "CONVERGED_FRTOL",
 49:     "CONVERGED_GATOL",
 50:     "CONVERGED_GRTOL",
 51:     "CONVERGED_GTTOL",
 52:     "CONVERGED_STEPTOL",
 53:     "CONVERGED_MINF",
 54:     "CONVERGED_USER" };
 55: const char **TaoSolverTerminationReasons = TaoSolverTerminationReasons_Shifted + 8;

 57:                                                    



 64: /*@C
 65:   TaoSolverRegisterAll - Registersall of the minimization methods in the TAO
 66:   package.

 68:   Not Collective

 70:   Level: developer

 72: .seealso TaoSolverRegister(), TaoSolverRegisterDestroy()
 73: @*/
 74: PetscErrorCode TaoSolverRegisterAll(const char path[])
 75: {
 77:   
 79:   TaoSolverRegisterAllCalled = PETSC_TRUE;
 80:   
 81:   TaoSolverRegisterDynamic("tao_lmvm",path,"TaoCreate_LMVM",TaoCreate_LMVM); 
 82:   TaoSolverRegisterDynamic("tao_nls",path,"TaoCreate_NLS",TaoCreate_NLS); 
 83:   TaoSolverRegisterDynamic("tao_ntr",path,"TaoCreate_NTR",TaoCreate_NTR); 
 84:   TaoSolverRegisterDynamic("tao_ntl",path,"TaoCreate_NTL",TaoCreate_NTL); 
 85:   TaoSolverRegisterDynamic("tao_cg",path,"TaoCreate_CG",TaoCreate_CG); 
 86:   TaoSolverRegisterDynamic("tao_tron",path,"TaoCreate_TRON",TaoCreate_TRON); 

 88:   TaoSolverRegisterDynamic("tao_blmvm",path,"TaoCreate_BLMVM",TaoCreate_BLMVM); 
 89:   TaoSolverRegisterDynamic("tao_bqpip",path,"TaoCreate_BQPIP",TaoCreate_BQPIP); 

 91:   TaoSolverRegisterDynamic("tao_gpcg",path,"TaoCreate_GPCG",TaoCreate_GPCG); 
 92:   TaoSolverRegisterDynamic("tao_nm",path,"TaoCreate_NM",TaoCreate_NM); 

 94:   TaoSolverRegisterDynamic("tao_pounders",path,"TaoCreate_POUNDERS",TaoCreate_POUNDERS); 



 98:   TaoSolverRegisterDynamic("tao_lcl",path,"TaoCreate_LCL",TaoCreate_LCL); 
 99:   TaoSolverRegisterDynamic("tao_ssils",path,"TaoCreate_SSILS",TaoCreate_SSILS); 
100:   TaoSolverRegisterDynamic("tao_ssfls",path,"TaoCreate_SSFLS",TaoCreate_SSFLS); 
101:   TaoSolverRegisterDynamic("tao_asils",path,"TaoCreate_ASILS",TaoCreate_ASILS); 
102:   TaoSolverRegisterDynamic("tao_asfls",path,"TaoCreate_ASFLS",TaoCreate_ASFLS); 



106:   TaoSolverRegisterDynamic("tao_fd_test",path,"TaoCreate_FD",TaoCreate_FD); 


109:   
110:   return(0);
111: }
112: