Changeset 17289
- Timestamp:
- 02/16/14 21:16:52 (11 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp
r17288 r17289 6 6 #include "../solutionsequences/solutionsequences.h" 7 7 8 //#define FSANALYTICAL 38 //#define FSANALYTICAL 4 9 9 10 10 /*Model processing*/ … … 2903 2903 forcex=fx3(x_coord,y_coord); 2904 2904 forcey=fy3(x_coord,y_coord); 2905 #elif FSANALYTICAL == 4 2906 forcex=fx4(x_coord,y_coord,z_coord); 2907 forcey=fy4(x_coord,y_coord,z_coord); 2908 forcez=fz4(x_coord,y_coord,z_coord); 2905 2909 #else 2906 2910 _error_("FS analytical not implemented yet"); -
issm/trunk-jpl/src/c/shared/FSanalyticals/FSanalytical3.cpp
r17288 r17289 23 23 return functiony; 24 24 } 25 IssmDouble fx4(IssmDouble x,IssmDouble y,IssmDouble z){ 26 IssmDouble functionx; 27 28 functionx = 4*pow(x, 2)*y*z*pow(x - 1, 2)*(z - 1) + 4*pow(x, 2)*y*z*(y - 1)*(2*y - 1)*(z - 1) + 2*pow(x, 2)*y*pow(x - 1, 2)*(y - 1)*(2*y - 1) + 4*pow(x, 2)*z*pow(x - 1, 2)*(y - 1)*(z - 1) + 2*pow(x, 2)*z*pow(x - 1, 2)*(2*y - 1)*(z - 1) - 4*x*pow(y, 2)*z*(x - 1)*(y - 1)*(z - 1) - 2*x*pow(y, 2)*z*(2*x - 1)*(y - 1)*(z - 1) - 4*x*y*z*(x - 1)*pow(y - 1, 2)*(z - 1) + 16*x*y*z*(x - 1)*(y - 1)*(2*y - 1)*(z - 1) - 2*x*y*z*(2*x - 1)*pow(y - 1, 2)*(z - 1) - 2*pow(y, 2)*z*(x - 1)*(2*x - 1)*(y - 1)*(z - 1) + 4*y*z*pow(x - 1, 2)*(y - 1)*(2*y - 1)*(z - 1) - 2*y*z*(x - 1)*(2*x - 1)*pow(y - 1, 2)*(z - 1) + y - 1.0L/2.0L; 29 30 return functionx; 31 } 32 IssmDouble fy4(IssmDouble x,IssmDouble y,IssmDouble z){ 33 IssmDouble functiony; 34 35 functiony = 4*pow(x, 2)*y*z*(x - 1)*(y - 1)*(z - 1) + 2*pow(x, 2)*y*z*(x - 1)*(2*y - 1)*(z - 1) + 2*pow(x, 2)*z*(x - 1)*(y - 1)*(2*y - 1)*(z - 1) - 4*x*pow(y, 2)*z*(x - 1)*(2*x - 1)*(z - 1) - 4*x*pow(y, 2)*z*pow(y - 1, 2)*(z - 1) - 2*x*pow(y, 2)*(x - 1)*(2*x - 1)*pow(y - 1, 2) + 4*x*y*z*pow(x - 1, 2)*(y - 1)*(z - 1) + 2*x*y*z*pow(x - 1, 2)*(2*y - 1)*(z - 1) - 16*x*y*z*(x - 1)*(2*x - 1)*(y - 1)*(z - 1) + 2*x*z*pow(x - 1, 2)*(y - 1)*(2*y - 1)*(z - 1) - 4*x*z*(x - 1)*(2*x - 1)*pow(y - 1, 2)*(z - 1) + x - 4*pow(y, 2)*z*(x - 1)*pow(y - 1, 2)*(z - 1) - 2*pow(y, 2)*z*(2*x - 1)*pow(y - 1, 2)*(z - 1) - 1.0L/2.0L; 36 37 return functiony; 38 } 39 IssmDouble fz4(IssmDouble x,IssmDouble y,IssmDouble z){ 40 IssmDouble functionz; 41 42 functionz = 2*pow(x, 2)*y*z*(x - 1)*(y - 1)*(2*y - 1) + 2*pow(x, 2)*y*(x - 1)*(y - 1)*(2*y - 1)*(z - 1) - 2*x*pow(y, 2)*z*(x - 1)*(2*x - 1)*(y - 1) - 2*x*pow(y, 2)*(x - 1)*(2*x - 1)*(y - 1)*(z - 1) + 2*x*y*z*pow(x - 1, 2)*(y - 1)*(2*y - 1) - 2*x*y*z*(x - 1)*(2*x - 1)*pow(y - 1, 2) + 2*x*y*pow(x - 1, 2)*(y - 1)*(2*y - 1)*(z - 1) - 2*x*y*(x - 1)*(2*x - 1)*pow(y - 1, 2)*(z - 1); 43 44 return functionz; 45 } -
issm/trunk-jpl/src/c/shared/FSanalyticals/fsanalyticals.h
r17285 r17289 16 16 IssmDouble fx3(IssmDouble x_coord, IssmDouble y_coord); 17 17 IssmDouble fy3(IssmDouble x_coord, IssmDouble y_coord); 18 IssmDouble fx4(IssmDouble x_coord, IssmDouble y_coord, IssmDouble z_coord); 19 IssmDouble fy4(IssmDouble x_coord, IssmDouble y_coord, IssmDouble z_coord); 20 IssmDouble fz4(IssmDouble x_coord, IssmDouble y_coord, IssmDouble z_coord); 18 21 19 22 #endif //ifndef _SHARED_ANALYTICALS_H_
Note:
See TracChangeset
for help on using the changeset viewer.