Changeset 5378
- Timestamp:
- 08/18/10 14:58:34 (15 years ago)
- Location:
- issm/trunk/src/c
- Files:
-
- 3 added
- 1 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/Makefile.am
r5350 r5378 1113 1113 ./solutions/objectivefunctionC.cpp\ 1114 1114 ./solutions/gradient_core.cpp\ 1115 ./solutions/adjoint_core.cpp\ 1115 ./solutions/adjointdiagnostic_core.cpp\ 1116 ./solutions/adjointbalancedthickness_core.cpp\ 1116 1117 ./solutions/prognostic_core.cpp\ 1117 1118 ./solutions/balancedthickness_core.cpp\ … … 1126 1127 ./solutions/SolutionConfiguration.cpp\ 1127 1128 ./solutions/CorePointerFromSolutionEnum.cpp\ 1129 ./solutions/AdjointCorePointerFromSolutionEnum.cpp\ 1128 1130 ./solvers/solver_linear.cpp\ 1129 1131 ./solvers/solver_adjoint_linear.cpp\ -
issm/trunk/src/c/solutions/control_core.cpp
r5318 r5378 37 37 OptPars optpars; 38 38 39 /*Solution core pointer*/39 /*Solution and Adjoint core pointer*/ 40 40 void (*solutioncore)(FemModel*)=NULL; 41 void (*adjointcore)(FemModel*)=NULL; 41 42 42 43 /*output: */ … … 57 58 /*}}}*/ 58 59 59 /*out of solution_type, figure out solution core function pointer*/60 /*out of solution_type, figure out solution core and adjoint function pointer*/ 60 61 CorePointerFromSolutionEnum(&solutioncore,solution_type); 62 AdjointCorePointerFromSolutionEnum(&adjointcore,solution_type); 61 63 62 64 /*some preliminary work to be done if running full-Stokes analysis: */ … … 81 83 /*In case we are running a steady state control method, compute new temperature field using new parameter distribution: */ 82 84 if (solution_type==SteadystateSolutionEnum) solutioncore(femmodel); 85 86 _printf_("%s\n"," compute adjoint state:"); 87 adjointcore(femmodel); 83 88 84 89 _printf_("%s\n"," computing gradJ..."); -
issm/trunk/src/c/solutions/gradient_core.cpp
r4357 r5378 17 17 /*parameters: */ 18 18 bool control_steady; 19 int control_type; 20 int verbose; 19 int control_type; 20 int verbose; 21 22 /*Intermediaries*/ 21 23 Vec new_gradient=NULL; 22 24 Vec gradient=NULL; … … 28 30 femmodel->parameters->FindParam(&verbose,VerboseEnum); 29 31 30 if(verbose)_printf_("%s\n"," compute adjoint state:");31 adjoint_core(femmodel);32 33 32 if(verbose)_printf_("%s\n"," compute gradient:"); 34 33 Gradjx(&gradient, femmodel->elements,femmodel->nodes, femmodel->vertices,femmodel->loads, femmodel->materials,femmodel->parameters, control_type); -
issm/trunk/src/c/solutions/solutions.h
r5281 r5378 13 13 14 14 /*cores: */ 15 void adjoint_core(FemModel* femmodel); 15 void adjointdiagnostic_core(FemModel* femmodel); 16 void adjointbalancedthickness_core(FemModel* femmodel); 16 17 void gradient_core(FemModel* femmodel,int step=0, double search_scalar=0); 17 18 void diagnostic_core(FemModel* femmodel); … … 49 50 void SolutionConfiguration(int** panalyses,int* pnumanalyses, void (**psolutioncore)(FemModel*),int solutiontype); 50 51 void CorePointerFromSolutionEnum(void (**psolutioncore)(FemModel*),int solutiontype); 52 void AdjointCorePointerFromSolutionEnum(void (**padjointcore)(FemModel*),int solutiontype); 51 53 52 54 #endif
Note:
See TracChangeset
for help on using the changeset viewer.