Changeset 18175
- Timestamp:
- 06/23/14 16:24:14 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r18126 r18175 187 187 188 188 /*Intermediaries*/ 189 int dim; 189 190 IssmDouble Jdet; 190 191 IssmDouble divergence=0.; … … 193 194 194 195 /*Get inputs and parameters*/ 195 Input* vx_input = this->GetInput(VxEnum); _assert_(vx_input); 196 Input* vy_input = this->GetInput(VyEnum); _assert_(vy_input); 197 Input* vz_input = this->GetInput(VzEnum); _assert_(vz_input); 196 this->FindParam(&dim,DomainDimensionEnum); 197 Input* vx_input = this->GetInput(VxEnum); _assert_(vx_input); 198 Input* vy_input = this->GetInput(VyEnum); _assert_(vy_input); 199 Input* vz_input = NULL; 200 if(dim==3){ 201 vz_input = this->GetInput(VzEnum); _assert_(vz_input); 202 } 198 203 this->GetVerticesCoordinates(&xyz_list); 199 204 200 Gauss* gauss=this->NewGauss Base(5);205 Gauss* gauss=this->NewGauss(5); 201 206 for(int ig=gauss->begin();ig<gauss->end();ig++){ 202 207 gauss->GaussPoint(ig); … … 206 211 vx_input->GetInputDerivativeValue(&dvx[0],xyz_list,gauss); 207 212 vy_input->GetInputDerivativeValue(&dvy[0],xyz_list,gauss); 208 vz_input->GetInputDerivativeValue(&dvz[0],xyz_list,gauss); 209 210 divergence += (dvx[0]+dvy[1]+dvz[2])*gauss->weight*Jdet; 213 if(dim==2){ 214 divergence += (dvx[0]+dvy[1])*gauss->weight*Jdet; 215 } 216 else{ 217 vz_input->GetInputDerivativeValue(&dvz[0],xyz_list,gauss); 218 divergence += (dvx[0]+dvy[1]+dvz[2])*gauss->weight*Jdet; 219 } 220 211 221 } 212 222
Note:
See TracChangeset
for help on using the changeset viewer.