Changeset 850
- Timestamp:
- 06/08/09 16:11:44 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/parallel/transient_core_2d.cpp
r828 r850 37 37 double* p_g_serial=NULL; 38 38 Vec h_g=NULL; 39 Vec h_g_intermediary=NULL; 39 40 double* h_g_serial=NULL; 40 41 Vec s_g=NULL; … … 43 44 double* b_g_serial=NULL; 44 45 45 Vec next_u_g=NULL;46 Vec next_p_g=NULL;47 Vec next_h_g=NULL;48 Vec h_g_intermediary=NULL;49 Vec next_s_g=NULL;50 Vec next_b_g=NULL;51 46 52 47 /*intermediary: */ … … 120 115 inputs->Add("surface",s_g,1,numberofnodes); 121 116 inputs->Add("bed",b_g,1,numberofnodes); 117 inputs->Add("velocity",u_g,2,numberofnodes); 122 118 123 119 //Deal with velocities. … … 126 122 127 123 //extract u_g and p_g from diagnostic_results, and erase diagnostic_results; 128 diagnostic_results->FindResult(& next_u_g,"u_g");129 diagnostic_results->FindResult(& next_p_g,"p_g");124 diagnostic_results->FindResult(&u_g,"u_g"); 125 diagnostic_results->FindResult(&p_g,"p_g"); 130 126 delete diagnostic_results; 131 127 … … 133 129 _printf_("%s\n","computing new thickness"); 134 130 135 inputs->Add("velocity", next_u_g,2,numberofnodes);131 inputs->Add("velocity",u_g,2,numberofnodes); 136 132 prognostic_results=new DataSet(ResultsEnum()); prognostic_core(prognostic_results,fem_p, inputs); 137 133 … … 142 138 //update surface and bed using the new thickness 143 139 _printf_(" updating geometry\n"); 144 UpdateGeometryx(& next_h_g,&next_b_g,&next_s_g,140 UpdateGeometryx(&h_g,&b_g,&s_g, 145 141 fem_p->elements, fem_p->nodes,fem_p->loads, fem_p->materials, 146 142 h_g_intermediary,b_g,s_g); … … 148 144 149 145 //plug into results. 150 result=new Result(results->Size()+1,time,step,"u_g",next_u_g); results->AddObject(result); 151 result=new Result(results->Size()+1,time,step,"p_g",next_p_g); results->AddObject(result); 152 result=new Result(results->Size()+1,time,step,"h_g",next_h_g); results->AddObject(result); 153 result=new Result(results->Size()+1,time,step,"s_g",next_s_g); results->AddObject(result); 154 result=new Result(results->Size()+1,time,step,"b_g",next_b_g); results->AddObject(result); 155 156 //point our results to next step 157 VecFree(&u_g); u_g=next_u_g; 158 VecFree(&p_g); p_g=next_p_g; 159 VecFree(&h_g); h_g=next_h_g; 160 VecFree(&s_g); s_g=next_s_g; 161 VecFree(&b_g); b_g=next_b_g; 146 result=new Result(results->Size()+1,time,step,"u_g",u_g); results->AddObject(result); 147 result=new Result(results->Size()+1,time,step,"p_g",p_g); results->AddObject(result); 148 result=new Result(results->Size()+1,time,step,"h_g",h_g); results->AddObject(result); 149 result=new Result(results->Size()+1,time,step,"s_g",s_g); results->AddObject(result); 150 result=new Result(results->Size()+1,time,step,"b_g",b_g); results->AddObject(result); 162 151 } 163 152 }
Note:
See TracChangeset
for help on using the changeset viewer.