Changeset 5695
- Timestamp:
- 09/07/10 14:45:11 (15 years ago)
- Location:
- issm/trunk/src/c/solvers
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/solvers/solver_adjoint_linear.cpp
r5693 r5695 12 12 * use the flag "true" so that all spc are taken as 0*/ 13 13 14 /*parameters:*/15 int kflag,pflag;16 17 /*output: */18 Vec ug=NULL;19 Vec uf=NULL;20 21 14 /*intermediary: */ 22 Mat Kgg=NULL; 23 Mat Kff=NULL; 24 Mat Kfs=NULL; 25 Vec pg=NULL; 26 Vec pf=NULL; 15 Mat Kgg = NULL, Kff=NULL, Kfs=NULL; 16 Vec ug = NULL, uf=NULL; 17 Vec pg = NULL, pf=NULL; 27 18 28 19 SystemMatricesx(&Kgg, &pg,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters); … … 33 24 Solverx(&uf, Kff, pf, NULL, femmodel->parameters); MatFree(&Kff); VecFree(&pf); 34 25 35 Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,femmodel->parameters,true); VecFree(&uf);//true means spc026 Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,femmodel->parameters,true); VecFree(&uf);//true means spc0 36 27 37 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); 38 39 VecFree(&ug); 40 VecFree(&uf); 28 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); VecFree(&ug); VecFree(&uf); 41 29 } -
issm/trunk/src/c/solvers/solver_diagnostic_nonlinear.cpp
r5693 r5695 12 12 void solver_diagnostic_nonlinear(FemModel* femmodel,bool conserve_loads){ 13 13 14 15 /*solution : */ 16 Vec ug=NULL; 17 Vec uf=NULL; 18 Vec old_ug=NULL; 19 Vec old_uf=NULL; 14 /*intermediary: */ 15 Mat Kgg = NULL, Kff = NULL, Kfs = NULL; 16 Vec ug = NULL, uf = NULL, old_ug= NULL, old_uf = NULL; 17 Vec pg = NULL, pf = NULL; 20 18 Loads* loads=NULL; 21 22 /*intermediary: */23 Mat Kgg=NULL;24 Mat Kff=NULL;25 Mat Kfs=NULL;26 Vec pg=NULL;27 Vec pf=NULL;28 19 int converged; 29 20 int constraints_converged; … … 67 58 SystemMatricesx(&Kgg, &pg,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,loads,femmodel->materials,femmodel->parameters); 68 59 69 Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets,femmodel->parameters); 70 MatFree(&Kgg); 60 Reducematrixfromgtofx(&Kff,&Kfs,Kgg,femmodel->nodesets,femmodel->parameters); MatFree(&Kgg); 71 61 72 Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,femmodel->parameters); 73 VecFree(&pg); 74 MatFree(&Kfs); 62 Reduceloadfromgtofx(&pf, pg, Kfs, femmodel->ys, femmodel->nodesets,femmodel->parameters); VecFree(&pg); MatFree(&Kfs); 75 63 76 64 Solverx(&uf, Kff, pf, old_uf, femmodel->parameters); … … 83 71 if(verbose)_printf_(" number of unstable constraints: %i\n",num_unstable_constraints); 84 72 85 convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); 86 MatFree(&Kff);VecFree(&pf); 73 convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); MatFree(&Kff);VecFree(&pf); 87 74 88 75 InputUpdateFromConstantx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,converged,ConvergedEnum); -
issm/trunk/src/c/solvers/solver_linear.cpp
r5693 r5695 10 10 void solver_linear(FemModel* femmodel){ 11 11 12 /*output: */13 Vec ug=NULL;14 Vec uf=NULL;15 16 12 /*intermediary: */ 17 Mat Kgg=NULL; 18 Mat Kff=NULL; 19 Mat Kfs=NULL; 20 Vec pg=NULL; 21 Vec pf=NULL; 13 Mat Kgg = NULL, Kff = NULL, Kfs = NULL; 14 Vec ug = NULL, uf = NULL; 15 Vec pg = NULL, pf = NULL; 22 16 23 17 SystemMatricesx(&Kgg,&pg,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters); … … 30 24 Mergesolutionfromftogx(&ug, uf,femmodel->ys,femmodel->nodesets,femmodel->parameters);VecFree(&uf); 31 25 32 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); 33 34 VecFree(&ug); 35 VecFree(&uf); 26 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); VecFree(&ug); VecFree(&uf); 36 27 }
Note:
See TracChangeset
for help on using the changeset viewer.