Changeset 21388
- Timestamp:
- 11/17/16 16:13:30 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp
r21140 r21388 3045 3045 IssmDouble rho_water = element->GetMaterialParameter(MaterialsRhoSeawaterEnum); 3046 3046 IssmDouble gravity = element->GetMaterialParameter(ConstantsGEnum); 3047 Input* surface_input = element->GetInput(SurfaceEnum); _assert_(surface_input);3047 Input* base_input = element->GetInput(BaseEnum); _assert_(base_input); 3048 3048 3049 3049 /* Start looping on the number of gaussian points: */ … … 3052 3052 gauss->GaussPoint(ig); 3053 3053 3054 surface_input->GetInputDerivativeValue(&slope[0],xyz_list,gauss);3054 base_input->GetInputDerivativeValue(&slope[0],xyz_list,gauss); 3055 3055 element->NodalFunctionsVelocity(vbasis,gauss); 3056 3056 element->JacobianDeterminantBase(&Jdet,xyz_list_base,gauss); … … 3942 3942 3943 3943 for(i=0;i<vnumnodes;i++){ 3944 pe->values[i*dim+0] += water_pressure*gauss->weight*Jdet*vbasis[i]*normal[0]; 3945 pe->values[i*dim+1] += water_pressure*gauss->weight*Jdet*vbasis[i]*normal[1]; 3946 if(dim==3){ 3947 pe->values[i*dim+2]+=water_pressure*gauss->weight*Jdet*vbasis[i]*normal[2]; 3948 } 3949 } 3950 } 3951 3952 /*Transform coordinate system*/ 3953 element->TransformLoadVectorCoord(pe,cs_list); 3944 pe->values[i*dim+(dim-1)]+=-water_pressure*gauss->weight*Jdet*vbasis[i]; 3945 } 3946 } 3954 3947 3955 3948 /* shelf dampening*/ … … 3964 3957 element->JacobianDeterminantBase(&Jdet,xyz_list_base,gauss); 3965 3958 element->NodalFunctionsVelocity(vbasis,gauss); 3966 element->NormalBase(&normal[0],xyz_list_base);3967 if (dim==2) normal_b=normal[1];3968 else if (dim==3) normal_b=sqrt(normal[0]*normal[0]+normal[1]*normal[1]);3969 3959 mb_input->GetInputValue(&mb, gauss); 3970 3960 for(i=0;i<vnumnodes;i++){ 3971 pe->values[i*dim+ 1] += dt*rho_water*gravity*mb*gauss->weight*Jdet*vbasis[i]*normal_b;3961 pe->values[i*dim+(dim-1)] += -dt*rho_water*gravity*mb*gauss->weight*Jdet*vbasis[i]; 3972 3962 } 3973 3963 } 3974 3964 } 3965 3966 /*DO NOT Transform Coordinate System: this stiffness matrix is already expressed in tangential coordinates*/ 3975 3967 3976 3968 /*Clean up and return*/
Note:
See TracChangeset
for help on using the changeset viewer.