Changeset 18827
- Timestamp:
- 11/21/14 15:39:33 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/cores/adjointstressbalance_core.cpp
r17971 r18827 16 16 bool save_results; 17 17 bool conserve_loads = true; 18 int fe_FS; 18 19 19 20 /*retrieve parameters:*/ 20 21 femmodel->parameters->FindParam(&isFS,FlowequationIsFSEnum); 21 22 femmodel->parameters->FindParam(&save_results,SaveResultsEnum); 23 femmodel->parameters->FindParam(&fe_FS,FlowequationFeFSEnum); 22 24 23 25 /*Compute velocities*/ 24 26 if(VerboseSolution()) _printf0_(" computing velocities\n"); 25 27 femmodel->SetCurrentConfiguration(StressbalanceAnalysisEnum); 26 solutionsequence_nonlinear(femmodel,conserve_loads); 28 29 if(VerboseSolution()) _printf0_(" computing velocities\n"); 30 femmodel->SetCurrentConfiguration(StressbalanceAnalysisEnum); 31 if(isFS){ 32 if (fe_FS==LATaylorHoodEnum || fe_FS==LACrouzeixRaviartEnum) 33 solutionsequence_la(femmodel); 34 else 35 solutionsequence_nonlinear(femmodel,conserve_loads); 36 } 37 else{ 38 solutionsequence_nonlinear(femmodel,conserve_loads); 39 } 27 40 28 41 /*Call SurfaceAreax, because some it might be needed by PVector*/ … … 37 50 if(save_results || true){ 38 51 if(VerboseSolution()) _printf0_(" saving results\n"); 39 if (isFS){ 40 //int outputs[4] = {AdjointxEnum,AdjointyEnum,AdjointzEnum,AdjointpEnum}; 41 //femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],4); 42 int outputs[3] = {AdjointxEnum,AdjointyEnum,AdjointpEnum}; 43 femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3); 52 if(isFS){ 53 if(fe_FS==LATaylorHoodEnum || fe_FS==LACrouzeixRaviartEnum){ 54 int outputs[2] = {AdjointxEnum,AdjointyEnum}; 55 femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],2); 56 } 57 else{ 58 int outputs[3] = {AdjointxEnum,AdjointyEnum,AdjointpEnum}; 59 femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3); 60 } 44 61 } 45 62 else{
Note:
See TracChangeset
for help on using the changeset viewer.