Changeset 17048
- Timestamp:
- 12/23/13 13:36:50 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Misfit.h
r16793 r17048 116 116 IssmDouble all_misfit_t=0; 117 117 IssmDouble dt; 118 IssmDouble area; 118 IssmDouble area_t; 119 IssmDouble all_area_t; 119 120 IssmDouble time,starttime,finaltime; 120 121 … … 126 127 if(this->lock)return misfit/(time-starttime); 127 128 129 128 130 for(i=0;i<femmodel->elements->Size();i++){ 129 131 Element* element=(Element*)femmodel->elements->GetObjectByOffset(i); 130 132 misfit_t+=element->Misfit(model_enum,observation_enum,weights_enum); 133 area_t+=element->MisfitArea(weights_enum); 131 134 } 132 135 133 136 ISSM_MPI_Allreduce ( (void*)&misfit_t,(void*)&all_misfit_t,1,ISSM_MPI_DOUBLE,ISSM_MPI_SUM,IssmComm::GetComm()); 137 ISSM_MPI_Allreduce ( (void*)&area_t,(void*)&all_area_t,1,ISSM_MPI_DOUBLE,ISSM_MPI_SUM,IssmComm::GetComm()); 138 area_t=all_area_t; 134 139 misfit_t=all_misfit_t; 135 140 136 141 /*Divide by surface area: */ 137 SurfaceAreax(&area,femmodel); 138 misfit_t=misfit_t/area; 142 misfit_t=misfit_t/area_t; 139 143 140 144 /*Recover delta_t: */
Note:
See TracChangeset
for help on using the changeset viewer.