Changeset 61
- Timestamp:
- 04/27/09 10:48:29 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/parallel/GradJCompute.cpp
r46 r61 20 20 /*intermediary: */ 21 21 int analysis_type; 22 char* solver _string=NULL;22 char* solverstring=NULL; 23 23 char* control_type=NULL; 24 24 … … 42 42 /*some parameters:*/ 43 43 femmodel->parameters->FindParam((void*)&analysis_type,"analysis_type"); 44 femmodel->parameters->FindParam((void*)&solver _string,"solver_string");44 femmodel->parameters->FindParam((void*)&solverstring,"solverstring"); 45 45 femmodel->parameters->FindParam((void*)&control_type,"control_type"); 46 46 47 _printf_("%s\n"," Recover solution for this stiffness and right hand side: \n");47 _printf_("%s\n"," recover solution for this stiffness and right hand side:"); 48 48 diagnostic_core_nonlinear(&u_g,&K_ff0,&K_fs0,inputs,femmodel); 49 49 VecToMPISerial(&u_g_double,u_g); VecFree(&u_g); 50 50 51 _printf_("%s\n"," Buid Du, difference between observed velocity and model velocity:\n");51 _printf_("%s\n"," buid Du, difference between observed velocity and model velocity:"); 52 52 Dux( &du_g, femmodel->elements,femmodel->nodes,femmodel->loads,femmodel->materials,u_g_double,u_g_obs, inputs,analysis_type); 53 53 54 _printf_("%s\n"," Reduce adjoint load from g-set to f-set:\n");54 _printf_("%s\n"," reduce adjoint load from g-set to f-set:"); 55 55 Reduceloadfromgtofx(&du_f, du_g, femmodel->Gmn, K_fs0, femmodel->ys0, femmodel->nodesets); 56 56 VecFree(&du_g);MatFree(&K_fs0); 57 57 58 _printf_("%s\n"," Solve for adjoint vector: \n");59 Solverx(&lambda_f, K_ff0, du_f, NULL, solver _string);58 _printf_("%s\n"," solve for adjoint vector:"); 59 Solverx(&lambda_f, K_ff0, du_f, NULL, solverstring); 60 60 VecFree(&du_f); MatFree(&K_ff0); 61 61 62 _printf_("%s\n"," Merge back to g set:\n");62 _printf_("%s\n"," merge back to g set:"); 63 63 Mergesolutionfromftogx(&lambda_g, lambda_f,femmodel->Gmn,femmodel->ys0,femmodel->nodesets); 64 64 VecFree(&lambda_f); 65 65 66 _printf_("%s\n"," Compute gradJ:\n");66 _printf_("%s\n"," compute gradJ:"); 67 67 VecToMPISerial(&lambda_g_double,lambda_g);VecFree(&lambda_g); 68 68 … … 71 71 72 72 /*Free ressources:*/ 73 xfree((void**)&solver _string);73 xfree((void**)&solverstring); 74 74 xfree((void**)&control_type); 75 75 xfree((void**)&u_g_double);
Note:
See TracChangeset
for help on using the changeset viewer.