Changeset 17615
- Timestamp:
- 04/01/14 09:03:21 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r17610 r17615 994 994 /*}}}*/ 995 995 void Element::ViscosityFS(IssmDouble* pviscosity,int dim,IssmDouble* xyz_list,Gauss* gauss,Input* vx_input,Input* vy_input,Input* vz_input){/*{{{*/ 996 /*The effective strain rate is defined in Paterson 3d Ed p 91 eq 9, 997 * and Cuffey p 303 eq 8.18: 998 * 999 * 2 eps_eff^2 = eps_xx^2 + eps_yy^2 + eps_zz^2 + 2(eps_xy^2 + eps_xz^2 + eps_yz^2) 1000 * 1001 * or 1002 * 1003 * eps_eff = 1/sqrt(2) sqrt( \sum_ij eps_ij^2 ) 1004 * 1005 * = 1/sqrt(2) ||eps||_F 1006 * 1007 * where ||.||_F is the Frobenius norm */ 996 1008 997 1009 /*Intermediaries*/ … … 1008 1020 } 1009 1021 else{ 1010 /* eps_eff^2 = exx^2 + eyy^2 + 2*exy^2*/1022 /* eps_eff^2 = 1/2 ( exx^2 + eyy^2 + 2*exy^2 )*/ 1011 1023 this->StrainRateSSA(&epsilon2d[0],xyz_list,gauss,vx_input,vy_input); 1012 eps_eff = sqrt(epsilon2d[0]*epsilon2d[0] + epsilon2d[1]*epsilon2d[1] + 2.*epsilon2d[2]*epsilon2d[2]);1024 eps_eff = 1./sqrt(2.)*sqrt(epsilon2d[0]*epsilon2d[0] + epsilon2d[1]*epsilon2d[1] + 2.*epsilon2d[2]*epsilon2d[2]); 1013 1025 } 1014 1026 … … 1084 1096 IssmDouble viscosity; 1085 1097 IssmDouble epsilon3d[5];/* epsilon=[exx,eyy,exy,exz,eyz];*/ 1086 IssmDouble epsilon2d[2]; /* epsilon=[exx,exy];*/1098 IssmDouble epsilon2d[2];/* epsilon=[exx,exy]; */ 1087 1099 IssmDouble eps_eff; 1088 1100 … … 1093 1105 } 1094 1106 else{ 1095 /* eps_eff^2 = exx^2 + exy^2*/1107 /* eps_eff^2 = 1/2 (exx^2 + 2*exy^2 )*/ 1096 1108 this->StrainRateHO2dvertical(&epsilon2d[0],xyz_list,gauss,vx_input,vy_input); 1097 eps_eff = sqrt(epsilon2d[0]*epsilon2d[0] +epsilon2d[1]*epsilon2d[1]);1109 eps_eff = 1./sqrt(2.)*sqrt(epsilon2d[0]*epsilon2d[0] + 2.*epsilon2d[1]*epsilon2d[1]); 1098 1110 } 1099 1111 … … 1113 1125 1114 1126 if(dim==2){ 1115 /* eps_eff^2 = exx^2 + eyy^2 + exy^2 + exx*eyy +*/1127 /* eps_eff^2 = exx^2 + eyy^2 + exy^2 + exx*eyy*/ 1116 1128 this->StrainRateSSA(&epsilon2d[0],xyz_list,gauss,vx_input,vy_input); 1117 1129 eps_eff = sqrt(epsilon2d[0]*epsilon2d[0] + epsilon2d[1]*epsilon2d[1] + epsilon2d[2]*epsilon2d[2] + epsilon2d[0]*epsilon2d[1]); 1118 1130 } 1119 1131 else{ 1120 /* eps_eff^2 = exx^2*/1132 /* eps_eff^2 = 1/2 exx^2*/ 1121 1133 this->StrainRateSSA1d(&epsilon1d,xyz_list,gauss,vx_input); 1122 eps_eff = sqrt(epsilon1d*epsilon1d );1134 eps_eff = sqrt(epsilon1d*epsilon1d/2.); 1123 1135 } 1124 1136
Note:
See TracChangeset
for help on using the changeset viewer.