Changeset 13787
- Timestamp:
- 10/22/12 12:01:50 (12 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 22 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/IoModel.cpp
r13761 r13787 17 17 #include "./classes.h" 18 18 #include "../io/io.h" 19 #include ". /Container/Parameters.h"19 #include "../Container/Parameters.h" 20 20 #include "../shared/shared.h" 21 #include "../io/io.h"22 21 #include "../include/include.h" 23 22 -
issm/trunk-jpl/src/c/classes/dakota/DakotaPlugin.cpp
r13622 r13787 33 33 34 34 //Dakota headers 35 #include "DakotaResponse.H"36 #include "ParamResponsePair.H"37 #include "DakotaPlugin.h"38 #include "system_defs.h"39 #include "ProblemDescDB.H"40 #include "ParallelLibrary.H"35 #include <DakotaResponse.H> 36 #include <ParamResponsePair.H> 37 #include <DakotaPlugin.h> 38 #include <system_defs.h> 39 #include <ProblemDescDB.H> 40 #include <ParallelLibrary.H> 41 41 42 42 namespace SIM { -
issm/trunk-jpl/src/c/classes/dakota/DakotaPlugin.h
r13623 r13787 8 8 9 9 /*Headers:*/ 10 /*{{{*/ 11 #include "DirectApplicInterface.H" 10 #include <DirectApplicInterface.H> 12 11 #include "../../toolkits/toolkits.h" 13 12 #include "../../classes/classes.h" 14 /*}}}*/15 13 16 14 namespace SIM { -
issm/trunk-jpl/src/c/classes/objects/Elements/Penta.cpp
r13761 r13787 180 180 181 181 /*Intermediaries */ 182 int count ,ig;182 int count; 183 183 IssmDouble basalfriction[NUMVERTICES]={0,0,0,0,0,0}; 184 184 IssmDouble alpha2,vx,vy; … … 204 204 gauss=new GaussPenta(0,1,2,2); 205 205 count=0; 206 for(i g=gauss->begin();ig<gauss->end();ig++){206 for(int ig=gauss->begin();ig<gauss->end();ig++){ 207 207 208 208 gauss->GaussPoint(ig); … … 226 226 void Penta::ComputeBasalStress(Vector<IssmDouble>* sigma_b){ 227 227 228 int i,j ,ig;228 int i,j; 229 229 int dofv[3]={0,1,2}; 230 230 int dofp[1]={3}; 231 231 int analysis_type,approximation; 232 IssmDouble 233 IssmDouble 234 IssmDouble 235 IssmDouble 236 IssmDouble 237 IssmDouble 238 IssmDouble 239 IssmDouble 240 IssmDouble 241 IssmDouble 242 IssmDouble 232 IssmDouble xyz_list[NUMVERTICES][3]; 233 IssmDouble xyz_list_tria[3][3]; 234 IssmDouble rho_ice,gravity,stokesreconditioning; 235 IssmDouble pressure,viscosity,Jdet2d; 236 IssmDouble bed_normal[3]; 237 IssmDouble basalforce[3]; 238 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 239 IssmDouble stresstensor[6]={0.0}; 240 IssmDouble sigma_xx,sigma_yy,sigma_zz; 241 IssmDouble sigma_xy,sigma_xz,sigma_yz; 242 IssmDouble surface=0,value=0; 243 243 GaussPenta* gauss; 244 244 … … 276 276 /* Start looping on the number of gaussian points: */ 277 277 gauss=new GaussPenta(0,1,2,2); 278 for (ig=gauss->begin();ig<gauss->end();ig++){278 for(int ig=gauss->begin();ig<gauss->end();ig++){ 279 279 280 280 gauss->GaussPoint(ig); … … 3299 3299 /*Intermediaries */ 3300 3300 int stabilization; 3301 int i,j, ig,found=0;3302 IssmDouble 3303 IssmDouble 3304 IssmDouble 3305 IssmDouble 3306 IssmDouble 3307 IssmDouble 3308 IssmDouble 3309 IssmDouble 3310 IssmDouble 3311 IssmDouble 3312 IssmDouble 3313 IssmDouble 3314 IssmDouble 3315 IssmDouble 3316 IssmDouble 3317 IssmDouble 3318 IssmDouble 3319 IssmDouble 3301 int i,j,found=0; 3302 IssmDouble Jdet,u,v,w,um,vm,wm; 3303 IssmDouble h,hx,hy,hz,vx,vy,vz,vel; 3304 IssmDouble gravity,rho_ice,rho_water; 3305 IssmDouble epsvel=2.220446049250313e-16; 3306 IssmDouble heatcapacity,thermalconductivity,dt; 3307 IssmDouble pressure,enthalpy; 3308 IssmDouble latentheat,kappa; 3309 IssmDouble tau_parameter,diameter; 3310 IssmDouble xyz_list[NUMVERTICES][3]; 3311 IssmDouble B_conduct[3][numdof]; 3312 IssmDouble B_advec[3][numdof]; 3313 IssmDouble Bprime_advec[3][numdof]; 3314 IssmDouble L[numdof]; 3315 IssmDouble dbasis[3][6]; 3316 IssmDouble D_scalar_conduct,D_scalar_advec; 3317 IssmDouble D_scalar_trans,D_scalar_stab; 3318 IssmDouble D[3][3]; 3319 IssmDouble K[3][3]={0.0}; 3320 3320 Tria* tria=NULL; 3321 3321 GaussPenta *gauss=NULL; … … 3346 3346 /* Start looping on the number of gaussian points: */ 3347 3347 gauss=new GaussPenta(2,2); 3348 for (ig=gauss->begin();ig<gauss->end();ig++){3348 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3349 3349 3350 3350 gauss->GaussPoint(ig); … … 3455 3455 3456 3456 /*Intermediaries */ 3457 int i,j,ig;3458 IssmDouble 3459 IssmDouble 3460 IssmDouble 3461 IssmDouble 3462 IssmDouble 3463 IssmDouble 3464 IssmDouble 3457 int i,j; 3458 IssmDouble mixed_layer_capacity,thermal_exchange_velocity; 3459 IssmDouble rho_ice,rho_water,heatcapacity; 3460 IssmDouble Jdet2d,dt; 3461 IssmDouble xyz_list[NUMVERTICES][3]; 3462 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 3463 IssmDouble basis[NUMVERTICES]; 3464 IssmDouble D_scalar; 3465 3465 GaussPenta *gauss=NULL; 3466 3466 … … 3481 3481 /* Start looping on the number of gauss (nodes on the bedrock) */ 3482 3482 gauss=new GaussPenta(0,1,2,2); 3483 for (ig=gauss->begin();ig<gauss->end();ig++){3483 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3484 3484 3485 3485 gauss->GaussPoint(ig); … … 3536 3536 /*Intermediaries */ 3537 3537 int stabilization; 3538 int i,j, ig,found=0;3539 IssmDouble 3540 IssmDouble 3541 IssmDouble 3542 IssmDouble 3543 IssmDouble 3544 IssmDouble 3545 IssmDouble 3546 IssmDouble 3547 IssmDouble 3548 IssmDouble 3549 IssmDouble 3550 IssmDouble 3551 IssmDouble 3552 IssmDouble 3553 IssmDouble 3538 int i,j,found=0; 3539 IssmDouble Jdet,u,v,w,um,vm,wm,vel; 3540 IssmDouble h,hx,hy,hz,vx,vy,vz; 3541 IssmDouble gravity,rho_ice,rho_water,kappa; 3542 IssmDouble heatcapacity,thermalconductivity,dt; 3543 IssmDouble tau_parameter,diameter; 3544 IssmDouble xyz_list[NUMVERTICES][3]; 3545 IssmDouble B_conduct[3][numdof]; 3546 IssmDouble B_advec[3][numdof]; 3547 IssmDouble Bprime_advec[3][numdof]; 3548 IssmDouble L[numdof]; 3549 IssmDouble dbasis[3][6]; 3550 IssmDouble D_scalar_conduct,D_scalar_advec; 3551 IssmDouble D_scalar_trans,D_scalar_stab; 3552 IssmDouble D[3][3]; 3553 IssmDouble K[3][3]={0.0}; 3554 3554 Tria* tria=NULL; 3555 3555 GaussPenta *gauss=NULL; … … 3578 3578 /* Start looping on the number of gaussian points: */ 3579 3579 gauss=new GaussPenta(2,2); 3580 for (ig=gauss->begin();ig<gauss->end();ig++){3580 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3581 3581 3582 3582 gauss->GaussPoint(ig); … … 3687 3687 3688 3688 /*Intermediaries */ 3689 int i,j ,ig;3690 IssmDouble 3691 IssmDouble 3692 IssmDouble 3693 IssmDouble 3694 IssmDouble 3695 IssmDouble 3696 IssmDouble 3689 int i,j; 3690 IssmDouble mixed_layer_capacity,thermal_exchange_velocity; 3691 IssmDouble rho_ice,rho_water,heatcapacity; 3692 IssmDouble Jdet2d,dt; 3693 IssmDouble xyz_list[NUMVERTICES][3]; 3694 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 3695 IssmDouble basis[NUMVERTICES]; 3696 IssmDouble D_scalar; 3697 3697 GaussPenta *gauss=NULL; 3698 3698 … … 3713 3713 /* Start looping on the number of gauss (nodes on the bedrock) */ 3714 3714 gauss=new GaussPenta(0,1,2,2); 3715 for (ig=gauss->begin();ig<gauss->end();ig++){3715 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3716 3716 3717 3717 gauss->GaussPoint(ig); … … 3757 3757 3758 3758 /*Intermediaries*/ 3759 int i,j, ig,found=0;3759 int i,j,found=0; 3760 3760 int friction_type,stabilization; 3761 3761 IssmDouble Jdet,phi,dt; … … 3800 3800 /* Start looping on the number of gaussian points: */ 3801 3801 gauss=new GaussPenta(2,3); 3802 for (ig=gauss->begin();ig<gauss->end();ig++){3802 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3803 3803 3804 3804 gauss->GaussPoint(ig); … … 3853 3853 3854 3854 /*Intermediaries */ 3855 int i,j ,ig;3856 IssmDouble 3857 IssmDouble 3858 IssmDouble 3859 IssmDouble 3860 IssmDouble 3861 IssmDouble 3862 IssmDouble 3855 int i,j; 3856 IssmDouble Jdet2d; 3857 IssmDouble heatcapacity,h_pmp; 3858 IssmDouble mixed_layer_capacity,thermal_exchange_velocity; 3859 IssmDouble rho_ice,rho_water,pressure,dt,scalar_ocean; 3860 IssmDouble xyz_list[NUMVERTICES][3]; 3861 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 3862 IssmDouble basis[NUMVERTICES]; 3863 3863 GaussPenta* gauss=NULL; 3864 3864 … … 3882 3882 /* Start looping on the number of gauss 2d (nodes on the bedrock) */ 3883 3883 gauss=new GaussPenta(0,1,2,2); 3884 for(i g=gauss->begin();ig<gauss->end();ig++){3884 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3885 3885 3886 3886 gauss->GaussPoint(ig); … … 3910 3910 3911 3911 /*Intermediaries */ 3912 int i,j ,ig;3912 int i,j; 3913 3913 int analysis_type; 3914 IssmDouble 3915 IssmDouble 3916 IssmDouble 3917 IssmDouble 3918 IssmDouble 3919 IssmDouble 3920 IssmDouble 3921 IssmDouble 3914 IssmDouble xyz_list[NUMVERTICES][3]; 3915 IssmDouble xyz_list_tria[NUMVERTICES2D][3]={0.0}; 3916 IssmDouble Jdet2d,dt; 3917 IssmDouble rho_ice,heatcapacity,geothermalflux_value; 3918 IssmDouble basalfriction,alpha2,vx,vy; 3919 IssmDouble scalar,enthalpy,enthalpyup; 3920 IssmDouble pressure,pressureup; 3921 IssmDouble basis[NUMVERTICES]; 3922 3922 Friction* friction=NULL; 3923 3923 GaussPenta* gauss=NULL; … … 3950 3950 gauss=new GaussPenta(0,1,2,2); 3951 3951 gaussup=new GaussPenta(3,4,5,2); 3952 for(i g=gauss->begin();ig<gauss->end();ig++){3952 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3953 3953 3954 3954 gauss->GaussPoint(ig); … … 4020 4020 4021 4021 /*Intermediaries*/ 4022 int i,j, ig,found=0;4022 int i,j,found=0; 4023 4023 int friction_type,stabilization; 4024 4024 IssmDouble Jdet,phi,dt; … … 4056 4056 /* Start looping on the number of gaussian points: */ 4057 4057 gauss=new GaussPenta(2,3); 4058 for (ig=gauss->begin();ig<gauss->end();ig++){4058 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4059 4059 4060 4060 gauss->GaussPoint(ig); … … 4107 4107 4108 4108 /*Intermediaries */ 4109 int i,j ,ig;4110 IssmDouble 4111 IssmDouble 4112 IssmDouble 4113 IssmDouble 4114 IssmDouble 4115 IssmDouble 4116 IssmDouble 4109 int i,j; 4110 IssmDouble Jdet2d; 4111 IssmDouble mixed_layer_capacity,thermal_exchange_velocity; 4112 IssmDouble rho_ice,rho_water,pressure,dt,scalar_ocean; 4113 IssmDouble heatcapacity,t_pmp; 4114 IssmDouble xyz_list[NUMVERTICES][3]; 4115 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 4116 IssmDouble basis[NUMVERTICES]; 4117 4117 GaussPenta* gauss=NULL; 4118 4118 … … 4136 4136 /* Start looping on the number of gauss 2d (nodes on the bedrock) */ 4137 4137 gauss=new GaussPenta(0,1,2,2); 4138 for(i g=gauss->begin();ig<gauss->end();ig++){4138 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4139 4139 4140 4140 gauss->GaussPoint(ig); … … 4164 4164 4165 4165 /*Intermediaries */ 4166 int i,j ,ig;4166 int i,j; 4167 4167 int analysis_type; 4168 IssmDouble 4169 IssmDouble 4170 IssmDouble 4171 IssmDouble 4172 IssmDouble 4173 IssmDouble 4174 IssmDouble 4168 IssmDouble xyz_list[NUMVERTICES][3]; 4169 IssmDouble xyz_list_tria[NUMVERTICES2D][3]={0.0}; 4170 IssmDouble Jdet2d,dt; 4171 IssmDouble rho_ice,heatcapacity,geothermalflux_value; 4172 IssmDouble basalfriction,alpha2,vx,vy; 4173 IssmDouble basis[NUMVERTICES]; 4174 IssmDouble scalar; 4175 4175 Friction* friction=NULL; 4176 4176 GaussPenta* gauss=NULL; … … 4199 4199 /* Start looping on the number of gauss 2d (nodes on the bedrock) */ 4200 4200 gauss=new GaussPenta(0,1,2,2); 4201 for(i g=gauss->begin();ig<gauss->end();ig++){4201 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4202 4202 4203 4203 gauss->GaussPoint(ig); … … 4569 4569 4570 4570 /*Intermediaries */ 4571 int i,j ,ig;4571 int i,j; 4572 4572 bool incomplete_adjoint; 4573 IssmDouble 4574 IssmDouble 4575 IssmDouble 4576 IssmDouble 4577 IssmDouble 4578 IssmDouble 4579 IssmDouble 4580 IssmDouble 4581 IssmDouble 4573 IssmDouble xyz_list[NUMVERTICES][3]; 4574 IssmDouble Jdet; 4575 IssmDouble eps1dotdphii,eps1dotdphij; 4576 IssmDouble eps2dotdphii,eps2dotdphij; 4577 IssmDouble mu_prime; 4578 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 4579 IssmDouble eps1[3],eps2[3]; 4580 IssmDouble phi[NUMVERTICES]; 4581 IssmDouble dphi[3][NUMVERTICES]; 4582 4582 GaussPenta *gauss=NULL; 4583 4583 … … 4594 4594 /* Start looping on the number of gaussian points: */ 4595 4595 gauss=new GaussPenta(5,5); 4596 for (ig=gauss->begin();ig<gauss->end();ig++){4596 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4597 4597 4598 4598 gauss->GaussPoint(ig); … … 4637 4637 4638 4638 /*Intermediaries */ 4639 int i,j ,ig;4639 int i,j; 4640 4640 bool incomplete_adjoint; 4641 IssmDouble xyz_list[NUMVERTICES][3]; 4642 IssmDouble Jdet; 4643 IssmDouble eps1dotdphii,eps1dotdphij; 4644 IssmDouble eps2dotdphii,eps2dotdphij; 4645 IssmDouble eps3dotdphii,eps3dotdphij; 4646 IssmDouble mu_prime; 4647 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 4648 IssmDouble eps1[3],eps2[3],eps3[3]; 4649 IssmDouble phi[NUMVERTICES]; 4650 IssmDouble dphi[3][NUMVERTICES]; 4641 IssmDouble xyz_list[NUMVERTICES][3]; 4642 IssmDouble Jdet; 4643 IssmDouble eps1dotdphii,eps1dotdphij; 4644 IssmDouble eps2dotdphii,eps2dotdphij; 4645 IssmDouble eps3dotdphii,eps3dotdphij; 4646 IssmDouble mu_prime; 4647 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 4648 IssmDouble eps1[3],eps2[3],eps3[3]; 4649 IssmDouble dphi[3][NUMVERTICES]; 4651 4650 GaussPenta *gauss=NULL; 4652 4651 … … 4664 4663 /* Start looping on the number of gaussian points: */ 4665 4664 gauss=new GaussPenta(5,5); 4666 for (ig=gauss->begin();ig<gauss->end();ig++){4665 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4667 4666 4668 4667 gauss->GaussPoint(ig); … … 4891 4890 void Penta::GradjDragPattyn(Vector<IssmDouble>* gradient,int control_index){ 4892 4891 4893 int i,j ,ig;4892 int i,j; 4894 4893 int analysis_type; 4895 4894 int vertexpidlist[NUMVERTICES]; 4896 IssmDouble 4897 IssmDouble 4898 IssmDouble 4899 IssmDouble 4900 IssmDouble 4901 IssmDouble 4902 IssmDouble 4903 IssmDouble 4895 IssmDouble vx,vy,lambda,mu,alpha_complement,Jdet; 4896 IssmDouble bed,thickness,Neff,drag; 4897 IssmDouble xyz_list[NUMVERTICES][3]; 4898 IssmDouble xyz_list_tria[NUMVERTICES2D][3]={0.0}; 4899 IssmDouble dk[NDOF3]; 4900 IssmDouble grade_g[NUMVERTICES]={0.0}; 4901 IssmDouble grade_g_gaussian[NUMVERTICES]; 4902 IssmDouble basis[6]; 4904 4903 Friction* friction=NULL; 4905 GaussPenta 4904 GaussPenta *gauss=NULL; 4906 4905 4907 4906 /*Gradient is 0 if on shelf or not on bed*/ … … 4924 4923 /* Start looping on the number of gaussian points: */ 4925 4924 gauss=new GaussPenta(0,1,2,4); 4926 for (ig=gauss->begin();ig<gauss->end();ig++){4925 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4927 4926 4928 4927 gauss->GaussPoint(ig); … … 4962 4961 void Penta::GradjDragStokes(Vector<IssmDouble>* gradient,int control_index){ 4963 4962 4964 int i,j ,ig;4963 int i,j; 4965 4964 int analysis_type; 4966 4965 int vertexpidlist[NUMVERTICES]; 4967 IssmDouble 4968 IssmDouble 4969 IssmDouble 4970 IssmDouble 4971 IssmDouble 4972 IssmDouble 4973 IssmDouble 4974 IssmDouble 4975 IssmDouble 4976 IssmDouble 4966 IssmDouble bed,thickness,Neff; 4967 IssmDouble lambda,mu,xi,Jdet,vx,vy,vz; 4968 IssmDouble alpha_complement,drag; 4969 IssmDouble surface_normal[3],bed_normal[3]; 4970 IssmDouble xyz_list[NUMVERTICES][3]; 4971 IssmDouble xyz_list_tria[NUMVERTICES2D][3]={0.0}; 4972 IssmDouble dk[NDOF3]; 4973 IssmDouble basis[6]; 4974 IssmDouble grade_g[NUMVERTICES]={0.0}; 4975 IssmDouble grade_g_gaussian[NUMVERTICES]; 4977 4976 Friction* friction=NULL; 4978 4977 GaussPenta* gauss=NULL; … … 4999 4998 /* Start looping on the number of gaussian points: */ 5000 4999 gauss=new GaussPenta(0,1,2,4); 5001 for(i g=gauss->begin();ig<gauss->end();ig++){5000 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5002 5001 5003 5002 gauss->GaussPoint(ig); … … 5752 5751 5753 5752 /*Intermediaries */ 5754 int i,j ,ig;5755 IssmDouble 5756 IssmDouble 5757 IssmDouble 5758 IssmDouble 5759 IssmDouble 5760 IssmDouble 5761 IssmDouble 5762 IssmDouble 5763 IssmDouble 5764 IssmDouble 5753 int i,j; 5754 IssmDouble Jdet; 5755 IssmDouble viscosity,oldviscosity,newviscosity,viscosity_overshoot; //viscosity 5756 IssmDouble epsilon[5],oldepsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 5757 IssmDouble xyz_list[NUMVERTICES][3]; 5758 IssmDouble B[3][numdofp]; 5759 IssmDouble Bprime[3][numdofm]; 5760 IssmDouble D[3][3]={0.0}; // material matrix, simple scalar matrix. 5761 IssmDouble D_scalar; 5762 IssmDouble Ke_gg[numdofp][numdofm]={0.0}; //local element stiffness matrix 5763 IssmDouble Ke_gg_gaussian[numdofp][numdofm]; //stiffness matrix evaluated at the gaussian point. 5765 5764 GaussPenta *gauss=NULL; 5766 5765 GaussTria *gauss_tria=NULL; … … 5797 5796 gauss=new GaussPenta(5,5); 5798 5797 gauss_tria=new GaussTria(); 5799 for (ig=gauss->begin();ig<gauss->end();ig++){5798 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5800 5799 5801 5800 gauss->GaussPoint(ig); … … 5844 5843 5845 5844 /*Intermediaries */ 5846 int i,j, ig,analysis_type;5847 IssmDouble 5848 IssmDouble 5849 IssmDouble 5850 IssmDouble 5851 IssmDouble 5852 IssmDouble 5853 IssmDouble 5854 IssmDouble 5855 IssmDouble 5856 IssmDouble 5857 IssmDouble 5845 int i,j,analysis_type; 5846 IssmDouble Jdet2d,slope_magnitude,alpha2; 5847 IssmDouble xyz_list[NUMVERTICES][3]; 5848 IssmDouble xyz_list_tria[NUMVERTICES2D][3]={0.0}; 5849 IssmDouble slope[3]={0.0,0.0,0.0}; 5850 IssmDouble MAXSLOPE=.06; // 6 % 5851 IssmDouble MOUNTAINKEXPONENT=10; 5852 IssmDouble L[2][numdof]; 5853 IssmDouble DL[2][2] ={{ 0,0 },{0,0}}; //for basal drag 5854 IssmDouble DL_scalar; 5855 IssmDouble Ke_gg[numdof][numdof] ={0.0}; 5856 IssmDouble Ke_gg_gaussian[numdof][numdof]; //stiffness matrix contribution from drag 5858 5857 Friction *friction = NULL; 5859 5858 GaussPenta *gauss=NULL; … … 5890 5889 /* Start looping on the number of gaussian points: */ 5891 5890 gauss=new GaussPenta(0,1,2,2); 5892 for (ig=gauss->begin();ig<gauss->end();ig++){5891 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5893 5892 5894 5893 gauss->GaussPoint(ig); … … 5957 5956 5958 5957 /*Intermediaries */ 5959 int i,j ,ig;5960 IssmDouble 5961 IssmDouble 5962 IssmDouble 5963 IssmDouble 5964 IssmDouble 5965 IssmDouble 5966 IssmDouble 5967 IssmDouble 5968 IssmDouble 5969 IssmDouble 5970 IssmDouble 5971 IssmDouble 5972 IssmDouble 5973 IssmDouble 5974 IssmDouble 5958 int i,j; 5959 IssmDouble Jdet; 5960 IssmDouble viscosity,stokesreconditioning; //viscosity 5961 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 5962 IssmDouble xyz_list[NUMVERTICES][3]; 5963 IssmDouble B[4][numdofs+3]; 5964 IssmDouble Bprime[4][numdofm]; 5965 IssmDouble B2[3][numdofm]; 5966 IssmDouble Bprime2[3][numdofs+3]; 5967 IssmDouble D[4][4]={0.0}; // material matrix, simple scalar matrix. 5968 IssmDouble D2[3][3]={0.0}; // material matrix, simple scalar matrix. 5969 IssmDouble D_scalar; 5970 IssmDouble Ke_gg[numdofs][numdofm]={0.0}; //local element stiffness matrix 5971 IssmDouble Ke_gg2[numdofm][numdofs]={0.0}; //local element stiffness matrix 5972 IssmDouble Ke_gg_gaussian[numdofs+3][numdofm]; //stiffness matrix evaluated at the gaussian point. 5973 IssmDouble Ke_gg_gaussian2[numdofm][numdofs+3]; //stiffness matrix evaluated at the gaussian point. 5975 5974 GaussPenta *gauss=NULL; 5976 5975 GaussTria *gauss_tria=NULL; … … 6006 6005 gauss=new GaussPenta(5,5); 6007 6006 gauss_tria=new GaussTria(); 6008 for (ig=gauss->begin();ig<gauss->end();ig++){6007 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6009 6008 6010 6009 gauss->GaussPoint(ig); … … 6063 6062 6064 6063 /*Intermediaries */ 6065 int i,j ,ig;6064 int i,j; 6066 6065 int analysis_type,approximation; 6067 IssmDouble 6068 IssmDouble 6069 IssmDouble 6070 IssmDouble 6071 IssmDouble 6072 IssmDouble 6073 IssmDouble 6074 IssmDouble 6075 IssmDouble 6076 IssmDouble 6077 IssmDouble 6078 IssmDouble 6079 IssmDouble 6080 IssmDouble 6066 IssmDouble stokesreconditioning; 6067 IssmDouble viscosity,alpha2_gauss,Jdet2d; 6068 IssmDouble bed_normal[3]; 6069 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 6070 IssmDouble xyz_list[NUMVERTICES][3]; 6071 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 6072 IssmDouble LMacAyealStokes[8][numdof2dm]; 6073 IssmDouble LprimeMacAyealStokes[8][numdof2d]; 6074 IssmDouble DLMacAyealStokes[8][8]={0.0}; 6075 IssmDouble LStokesMacAyeal[4][numdof2d]; 6076 IssmDouble LprimeStokesMacAyeal[4][numdof2dm]; 6077 IssmDouble DLStokesMacAyeal[4][4]={0.0}; 6078 IssmDouble Ke_drag_gaussian[numdof2dm][numdof2d]; 6079 IssmDouble Ke_drag_gaussian2[numdof2d][numdof2dm]; 6081 6080 Friction* friction=NULL; 6082 6081 GaussPenta *gauss=NULL; … … 6114 6113 /* Start looping on the number of gaussian points: */ 6115 6114 gauss=new GaussPenta(0,1,2,2); 6116 for (ig=gauss->begin();ig<gauss->end();ig++){6115 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6117 6116 6118 6117 gauss->GaussPoint(ig); … … 6364 6363 6365 6364 /*Intermediaries */ 6366 int i,j, ig,approximation;6365 int i,j,approximation; 6367 6366 IssmDouble Jdet; 6368 6367 IssmDouble viscosity , oldviscosity, newviscosity, viscosity_overshoot; … … 6400 6399 gauss=new GaussPenta(5,5); 6401 6400 gauss_tria=new GaussTria(); 6402 for (ig=gauss->begin();ig<gauss->end();ig++){6401 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6403 6402 6404 6403 gauss->GaussPoint(ig); … … 6615 6614 6616 6615 /*Intermediaries */ 6617 int i,j ,ig;6616 int i,j; 6618 6617 int approximation; 6619 IssmDouble 6620 IssmDouble 6621 IssmDouble 6622 IssmDouble 6623 IssmDouble 6624 IssmDouble 6625 IssmDouble 6626 IssmDouble 6618 IssmDouble xyz_list[NUMVERTICES][3]; 6619 IssmDouble Jdet; 6620 IssmDouble viscosity,oldviscosity,newviscosity,viscosity_overshoot; //viscosity 6621 IssmDouble epsilon[5],oldepsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 6622 IssmDouble D_scalar; 6623 IssmDouble D[5][5]={0.0}; // material matrix, simple scalar matrix. 6624 IssmDouble B[5][numdof]; 6625 IssmDouble Bprime[5][numdof]; 6627 6626 Tria* tria=NULL; 6628 6627 GaussPenta *gauss=NULL; … … 6642 6641 /* Start looping on the number of gaussian points: */ 6643 6642 gauss=new GaussPenta(5,5); 6644 for (ig=gauss->begin();ig<gauss->end();ig++){6643 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6645 6644 6646 6645 gauss->GaussPoint(ig); … … 6680 6679 6681 6680 /*Intermediaries */ 6682 int i,j ,ig;6681 int i,j; 6683 6682 int analysis_type; 6684 IssmDouble 6685 IssmDouble 6686 IssmDouble 6687 IssmDouble 6688 IssmDouble 6689 IssmDouble 6690 IssmDouble 6691 IssmDouble 6692 IssmDouble 6683 IssmDouble xyz_list[NUMVERTICES][3]; 6684 IssmDouble xyz_list_tria[NUMVERTICES2D][3]={0.0}; 6685 IssmDouble slope_magnitude,alpha2,Jdet; 6686 IssmDouble slope[3]={0.0,0.0,0.0}; 6687 IssmDouble MAXSLOPE=.06; // 6 % 6688 IssmDouble MOUNTAINKEXPONENT=10; 6689 IssmDouble L[2][numdof]; 6690 IssmDouble DL[2][2]={{ 0,0 },{0,0}}; //for basal drag 6691 IssmDouble DL_scalar; 6693 6692 Friction *friction = NULL; 6694 6693 GaussPenta *gauss=NULL; … … 6713 6712 /* Start looping on the number of gaussian points: */ 6714 6713 gauss=new GaussPenta(0,1,2,2); 6715 for (ig=gauss->begin();ig<gauss->end();ig++){6714 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6716 6715 6717 6716 gauss->GaussPoint(ig); … … 6782 6781 6783 6782 /*Intermediaries */ 6784 int i,j, ig,approximation;6785 IssmDouble 6786 IssmDouble 6787 IssmDouble 6788 IssmDouble 6789 IssmDouble 6790 IssmDouble 6791 IssmDouble 6792 IssmDouble 6783 int i,j,approximation; 6784 IssmDouble Jdet,viscosity,stokesreconditioning; 6785 IssmDouble xyz_list[NUMVERTICES][3]; 6786 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 6787 IssmDouble B[8][27]; 6788 IssmDouble B_prime[8][27]; 6789 IssmDouble D_scalar; 6790 IssmDouble D[8][8]={0.0}; 6791 IssmDouble Ke_temp[27][27]={0.0}; //for the six nodes and the bubble 6793 6792 GaussPenta *gauss=NULL; 6794 6793 … … 6807 6806 /* Start looping on the number of gaussian points: */ 6808 6807 gauss=new GaussPenta(5,5); 6809 for (ig=gauss->begin();ig<gauss->end();ig++){6808 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6810 6809 6811 6810 gauss->GaussPoint(ig); … … 6847 6846 6848 6847 /*Intermediaries */ 6849 int i,j ,ig;6848 int i,j; 6850 6849 int analysis_type,approximation; 6851 IssmDouble 6852 IssmDouble 6853 IssmDouble 6854 IssmDouble 6855 IssmDouble 6856 IssmDouble 6857 IssmDouble 6858 IssmDouble 6850 IssmDouble alpha2,Jdet2d; 6851 IssmDouble stokesreconditioning,viscosity; 6852 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 6853 IssmDouble xyz_list[NUMVERTICES][3]; 6854 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 6855 IssmDouble LStokes[2][numdof2d]; 6856 IssmDouble DLStokes[2][2]={0.0}; 6857 IssmDouble Ke_drag_gaussian[numdof2d][numdof2d]; 6859 6858 Friction* friction=NULL; 6860 6859 GaussPenta *gauss=NULL; … … 6879 6878 /* Start looping on the number of gaussian points: */ 6880 6879 gauss=new GaussPenta(0,1,2,2); 6881 for (ig=gauss->begin();ig<gauss->end();ig++){6880 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6882 6881 6883 6882 gauss->GaussPoint(ig); … … 6933 6932 6934 6933 /*Intermediaries */ 6935 int i,j ,ig;6936 IssmDouble 6937 IssmDouble 6938 IssmDouble 6939 IssmDouble 6940 IssmDouble 6934 int i,j; 6935 IssmDouble Jdet; 6936 IssmDouble xyz_list[NUMVERTICES][3]; 6937 IssmDouble B[NDOF1][NUMVERTICES]; 6938 IssmDouble Bprime[NDOF1][NUMVERTICES]; 6939 IssmDouble DL_scalar; 6941 6940 GaussPenta *gauss=NULL; 6942 6941 … … 6949 6948 /* Start looping on the number of gaussian points: */ 6950 6949 gauss=new GaussPenta(2,2); 6951 for (ig=gauss->begin();ig<gauss->end();ig++){6950 for(int ig=gauss->begin();ig<gauss->end();ig++){ 6952 6951 6953 6952 gauss->GaussPoint(ig); … … 6979 6978 6980 6979 /*Intermediaries */ 6981 int i,j ,ig;6982 IssmDouble 6983 IssmDouble 6984 IssmDouble 6985 IssmDouble 6986 IssmDouble 6980 int i,j; 6981 IssmDouble xyz_list[NUMVERTICES][3]; 6982 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 6983 IssmDouble surface_normal[3]; 6984 IssmDouble Jdet2d,DL_scalar; 6985 IssmDouble basis[NUMVERTICES]; 6987 6986 GaussPenta *gauss=NULL; 6988 6987 … … 6997 6996 /* Start looping on the number of gaussian points: */ 6998 6997 gauss=new GaussPenta(3,4,5,2); 6999 for (ig=gauss->begin();ig<gauss->end();ig++){6998 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7000 6999 7001 7000 gauss->GaussPoint(ig); … … 7038 7037 7039 7038 /*Intermediaries */ 7040 int i,j ,ig;7039 int i,j; 7041 7040 int approximation; 7042 IssmDouble 7043 IssmDouble 7044 IssmDouble 7045 IssmDouble 7046 IssmDouble 7047 IssmDouble 7048 IssmDouble 7041 IssmDouble viscosity,Jdet; 7042 IssmDouble stokesreconditioning; 7043 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 7044 IssmDouble dw[3]; 7045 IssmDouble xyz_list[NUMVERTICES][3]; 7046 IssmDouble basis[6]; //for the six nodes of the penta 7047 IssmDouble dbasis[3][6]; //for the six nodes of the penta 7049 7048 GaussPenta *gauss=NULL; 7050 7049 … … 7064 7063 /* Start looping on the number of gaussian points: */ 7065 7064 gauss=new GaussPenta(5,5); 7066 for (ig=gauss->begin();ig<gauss->end();ig++){7065 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7067 7066 7068 7067 gauss->GaussPoint(ig); … … 7100 7099 7101 7100 /*Intermediaries*/ 7102 int i,j ,ig;7101 int i,j; 7103 7102 int approximation,analysis_type; 7104 IssmDouble 7105 IssmDouble 7106 IssmDouble 7107 IssmDouble 7108 IssmDouble 7109 IssmDouble 7110 IssmDouble 7111 IssmDouble 7112 IssmDouble 7103 IssmDouble Jdet,Jdet2d; 7104 IssmDouble stokesreconditioning; 7105 IssmDouble bed_normal[3]; 7106 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 7107 IssmDouble viscosity, w, alpha2_gauss; 7108 IssmDouble dw[3]; 7109 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 7110 IssmDouble xyz_list[NUMVERTICES][3]; 7111 IssmDouble basis[6]; //for the six nodes of the penta 7113 7112 Tria* tria=NULL; 7114 7113 Friction* friction=NULL; … … 7137 7136 /* Start looping on the number of gauss 2d (nodes on the bedrock) */ 7138 7137 gauss=new GaussPenta(0,1,2,2); 7139 for(i g=gauss->begin();ig<gauss->end();ig++){7138 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7140 7139 7141 7140 gauss->GaussPoint(ig); … … 7189 7188 7190 7189 /*Intermediaries */ 7191 int i,j ,ig;7190 int i,j; 7192 7191 int approximation; 7193 IssmDouble 7194 IssmDouble 7195 IssmDouble 7196 IssmDouble 7197 IssmDouble 7198 IssmDouble 7199 IssmDouble 7192 IssmDouble viscosity,Jdet; 7193 IssmDouble stokesreconditioning; 7194 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 7195 IssmDouble dw[3]; 7196 IssmDouble xyz_list[NUMVERTICES][3]; 7197 IssmDouble basis[6]; //for the six nodes of the penta 7198 IssmDouble dbasis[3][6]; //for the six nodes of the penta 7200 7199 GaussPenta *gauss=NULL; 7201 7200 … … 7215 7214 /* Start looping on the number of gaussian points: */ 7216 7215 gauss=new GaussPenta(5,5); 7217 for (ig=gauss->begin();ig<gauss->end();ig++){7216 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7218 7217 7219 7218 gauss->GaussPoint(ig); … … 7251 7250 7252 7251 /*Intermediaries*/ 7253 int i,j ,ig;7252 int i,j; 7254 7253 int approximation,analysis_type; 7255 IssmDouble 7256 IssmDouble 7257 IssmDouble 7258 IssmDouble 7259 IssmDouble 7260 IssmDouble 7261 IssmDouble 7262 IssmDouble 7263 IssmDouble 7254 IssmDouble Jdet,Jdet2d; 7255 IssmDouble stokesreconditioning; 7256 IssmDouble bed_normal[3]; 7257 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 7258 IssmDouble viscosity, w, alpha2_gauss; 7259 IssmDouble dw[3]; 7260 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 7261 IssmDouble xyz_list[NUMVERTICES][3]; 7262 IssmDouble basis[6]; //for the six nodes of the penta 7264 7263 Tria* tria=NULL; 7265 7264 Friction* friction=NULL; … … 7288 7287 /* Start looping on the number of gauss 2d (nodes on the bedrock) */ 7289 7288 gauss=new GaussPenta(0,1,2,2); 7290 for(i g=gauss->begin();ig<gauss->end();ig++){7289 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7291 7290 7292 7291 gauss->GaussPoint(ig); … … 7402 7401 7403 7402 /*Intermediaries*/ 7404 int i,j ,k,ig;7403 int i,j; 7405 7404 int node0,node1; 7406 7405 int connectivity[2]; 7407 IssmDouble 7408 IssmDouble 7409 IssmDouble 7410 IssmDouble 7411 IssmDouble z_segment[2],slope[2];7412 IssmDouble 7413 IssmDouble 7414 IssmDouble 7406 IssmDouble Jdet; 7407 IssmDouble xyz_list[NUMVERTICES][3]; 7408 IssmDouble xyz_list_segment[2][3]; 7409 IssmDouble z_list[NUMVERTICES]; 7410 IssmDouble slope[2]; 7411 IssmDouble slope2,constant_part; 7412 IssmDouble rho_ice,gravity,n,B; 7413 IssmDouble ub,vb,z_g,surface,thickness; 7415 7414 GaussPenta* gauss=NULL; 7416 7415 … … 7445 7444 /*Loop on the Gauss points: */ 7446 7445 gauss=new GaussPenta(node0,node1,3); 7447 for(i g=gauss->begin();ig<gauss->end();ig++){7446 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7448 7447 gauss->GaussPoint(ig); 7449 7448 … … 7518 7517 7519 7518 /*Intermediaries*/ 7520 int i,j ,ig;7521 IssmDouble 7522 IssmDouble 7523 IssmDouble 7524 IssmDouble 7525 IssmDouble 7519 int i,j; 7520 IssmDouble Jdet; 7521 IssmDouble slope[3]; //do not put 2! this goes into GetInputDerivativeValue, which addresses slope[3] also! 7522 IssmDouble driving_stress_baseline,thickness; 7523 IssmDouble xyz_list[NUMVERTICES][3]; 7524 IssmDouble basis[6]; 7526 7525 GaussPenta *gauss=NULL; 7527 7526 … … 7536 7535 /* Start looping on the number of gaussian points: */ 7537 7536 gauss=new GaussPenta(2,3); 7538 for (ig=gauss->begin();ig<gauss->end();ig++){7537 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7539 7538 7540 7539 gauss->GaussPoint(ig); … … 7580 7579 7581 7580 /*Intermediaries*/ 7582 int i,j ,ig;7581 int i,j; 7583 7582 int approximation; 7584 IssmDouble Jdet,viscosity; 7585 IssmDouble gravity,rho_ice,stokesreconditioning; 7586 IssmDouble xyz_list[NUMVERTICES][3]; 7587 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 7588 IssmDouble l1l7[7]; //for the six nodes and the bubble 7589 IssmDouble B[8][numdofbubble]; 7590 IssmDouble B_prime[8][numdofbubble]; 7591 IssmDouble B_prime_bubble[8][3]; 7592 IssmDouble D[8][8]={0.0}; 7593 IssmDouble D_scalar; 7594 IssmDouble Pe_gaussian[numdofbubble]={0.0}; //for the six nodes and the bubble 7595 IssmDouble Ke_temp[numdofbubble][3]={0.0}; //for the six nodes and the bubble 7596 IssmDouble Ke_gaussian[numdofbubble][3]; 7583 IssmDouble Jdet,viscosity; 7584 IssmDouble gravity,rho_ice,stokesreconditioning; 7585 IssmDouble xyz_list[NUMVERTICES][3]; 7586 IssmDouble epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/ 7587 IssmDouble l1l7[7]; //for the six nodes and the bubble 7588 IssmDouble B[8][numdofbubble]; 7589 IssmDouble B_prime[8][numdofbubble]; 7590 IssmDouble B_prime_bubble[8][3]; 7591 IssmDouble D[8][8]={0.0}; 7592 IssmDouble D_scalar; 7593 IssmDouble Pe_gaussian[numdofbubble]={0.0}; //for the six nodes and the bubble 7594 IssmDouble Ke_temp[numdofbubble][3]={0.0}; //for the six nodes and the bubble 7597 7595 GaussPenta *gauss=NULL; 7598 7596 … … 7613 7611 /* Start looping on the number of gaussian points: */ 7614 7612 gauss=new GaussPenta(5,5); 7615 for (ig=gauss->begin();ig<gauss->end();ig++){7613 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7616 7614 7617 7615 gauss->GaussPoint(ig); … … 7657 7655 7658 7656 /*Intermediaries*/ 7659 int i,j ,ig;7657 int i,j; 7660 7658 int approximation,shelf_dampening; 7661 IssmDouble 7662 IssmDouble 7663 IssmDouble 7664 IssmDouble 7665 IssmDouble 7666 IssmDouble 7667 IssmDouble 7668 IssmDouble 7659 IssmDouble gravity,rho_water,bed,water_pressure; 7660 IssmDouble damper,normal_vel,vx,vy,vz,dt; 7661 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 7662 IssmDouble xyz_list[NUMVERTICES][3]; 7663 IssmDouble bed_normal[3]; 7664 IssmDouble dz[3]; 7665 IssmDouble basis[6]; //for the six nodes of the penta 7666 IssmDouble Jdet2d; 7669 7667 GaussPenta *gauss=NULL; 7670 7668 … … 7689 7687 /* Start looping on the number of gauss 2d (nodes on the bedrock) */ 7690 7688 gauss=new GaussPenta(0,1,2,2); 7691 for(i g=gauss->begin();ig<gauss->end();ig++){7689 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7692 7690 7693 7691 gauss->GaussPoint(ig); … … 7742 7740 7743 7741 /*Intermediaries*/ 7744 int i,ig;7745 7742 int approximation; 7746 7743 IssmDouble Jdet; … … 7766 7763 /* Start looping on the number of gaussian points: */ 7767 7764 gauss=new GaussPenta(2,2); 7768 for (ig=gauss->begin();ig<gauss->end();ig++){7765 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7769 7766 7770 7767 gauss->GaussPoint(ig); … … 7783 7780 dvdy=dv[1]; 7784 7781 7785 for (i=0;i<numdof;i++) pe->values[i] += (dudx+dvdy+dwdz)*Jdet*gauss->weight*basis[i];7782 for(int i=0;i<numdof;i++) pe->values[i] += (dudx+dvdy+dwdz)*Jdet*gauss->weight*basis[i]; 7786 7783 } 7787 7784 … … 7798 7795 7799 7796 /*Intermediaries */ 7800 int i,j ,ig;7797 int i,j; 7801 7798 int approximation; 7802 IssmDouble 7803 IssmDouble 7804 IssmDouble 7805 IssmDouble 7806 IssmDouble 7807 IssmDouble 7799 IssmDouble xyz_list[NUMVERTICES][3]; 7800 IssmDouble xyz_list_tria[NUMVERTICES2D][3]; 7801 IssmDouble Jdet2d; 7802 IssmDouble vx,vy,vz,dbdx,dbdy,basalmeltingvalue; 7803 IssmDouble slope[3]; 7804 IssmDouble basis[NUMVERTICES]; 7808 7805 GaussPenta* gauss=NULL; 7809 7806 … … 7828 7825 /* Start looping on the number of gaussian points: */ 7829 7826 gauss=new GaussPenta(0,1,2,2); 7830 for(i g=gauss->begin();ig<gauss->end();ig++){7827 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7831 7828 7832 7829 gauss->GaussPoint(ig); … … 7916 7913 7917 7914 /*Intermediaries */ 7918 int i,j,ig; 7919 IssmDouble xyz_list[NUMVERTICES][3]; 7920 IssmDouble Jdet; 7921 IssmDouble eps1dotdphii,eps1dotdphij; 7922 IssmDouble eps2dotdphii,eps2dotdphij; 7923 IssmDouble mu_prime; 7924 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 7925 IssmDouble eps1[3],eps2[3]; 7926 IssmDouble phi[NUMVERTICES]; 7927 IssmDouble dphi[3][NUMVERTICES]; 7915 int i,j; 7916 IssmDouble xyz_list[NUMVERTICES][3]; 7917 IssmDouble Jdet; 7918 IssmDouble eps1dotdphii,eps1dotdphij; 7919 IssmDouble eps2dotdphii,eps2dotdphij; 7920 IssmDouble mu_prime; 7921 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 7922 IssmDouble eps1[3],eps2[3]; 7923 IssmDouble dphi[3][NUMVERTICES]; 7928 7924 GaussPenta *gauss=NULL; 7929 7925 … … 7938 7934 /* Start looping on the number of gaussian points: */ 7939 7935 gauss=new GaussPenta(5,5); 7940 for (ig=gauss->begin();ig<gauss->end();ig++){7936 for(int ig=gauss->begin();ig<gauss->end();ig++){ 7941 7937 7942 7938 gauss->GaussPoint(ig); … … 7981 7977 7982 7978 /*Intermediaries */ 7983 int i,j,ig; 7984 IssmDouble xyz_list[NUMVERTICES][3]; 7985 IssmDouble Jdet; 7986 IssmDouble eps1dotdphii,eps1dotdphij; 7987 IssmDouble eps2dotdphii,eps2dotdphij; 7988 IssmDouble eps3dotdphii,eps3dotdphij; 7989 IssmDouble mu_prime; 7990 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 7991 IssmDouble eps1[3],eps2[3],eps3[3]; 7992 IssmDouble phi[NUMVERTICES]; 7993 IssmDouble dphi[3][NUMVERTICES]; 7979 int i,j; 7980 IssmDouble xyz_list[NUMVERTICES][3]; 7981 IssmDouble Jdet; 7982 IssmDouble eps1dotdphii,eps1dotdphij; 7983 IssmDouble eps2dotdphii,eps2dotdphij; 7984 IssmDouble eps3dotdphii,eps3dotdphij; 7985 IssmDouble mu_prime; 7986 IssmDouble epsilon[5]; /* epsilon=[exx,eyy,exy,exz,eyz];*/ 7987 IssmDouble eps1[3],eps2[3],eps3[3]; 7988 IssmDouble dphi[3][NUMVERTICES]; 7994 7989 GaussPenta *gauss=NULL; 7995 7990 … … 8005 8000 /* Start looping on the number of gaussian points: */ 8006 8001 gauss=new GaussPenta(5,5); 8007 for (ig=gauss->begin();ig<gauss->end();ig++){8002 for(int ig=gauss->begin();ig<gauss->end();ig++){ 8008 8003 8009 8004 gauss->GaussPoint(ig); -
issm/trunk-jpl/src/c/classes/objects/Elements/Tria.cpp
r13761 r13787 405 405 406 406 /*Intermediaries */ 407 int i,j, ig,dim;408 IssmDouble 409 IssmDouble 410 IssmDouble 411 IssmDouble 412 IssmDouble 413 IssmDouble 414 IssmDouble 415 IssmDouble 407 int i,j,dim; 408 IssmDouble xyz_list[NUMVERTICES][3]; 409 IssmDouble Jdettria,dt,vx,vy; 410 IssmDouble L[NUMVERTICES]; 411 IssmDouble B[2][NUMVERTICES]; 412 IssmDouble Bprime[2][NUMVERTICES]; 413 IssmDouble DL[2][2]={0.0}; 414 IssmDouble DLprime[2][2]={0.0}; 415 IssmDouble DL_scalar; 416 416 GaussTria *gauss=NULL; 417 417 … … 436 436 /* Start looping on the number of gaussian points: */ 437 437 gauss=new GaussTria(2); 438 for (ig=gauss->begin();ig<gauss->end();ig++){438 for(int ig=gauss->begin();ig<gauss->end();ig++){ 439 439 440 440 gauss->GaussPoint(ig); … … 593 593 594 594 /*Intermediaries */ 595 int i,j ,ig;596 IssmDouble 597 IssmDouble 598 IssmDouble 599 IssmDouble 595 int i,j; 596 IssmDouble Jdettria,dt; 597 IssmDouble surface_mass_balance_g,basal_melting_g,basal_melting_correction_g,thickness_g; 598 IssmDouble xyz_list[NUMVERTICES][3]; 599 IssmDouble L[NUMVERTICES]; 600 600 GaussTria* gauss=NULL; 601 601 … … 614 614 /* Start looping on the number of gaussian points: */ 615 615 gauss=new GaussTria(2); 616 for(i g=gauss->begin();ig<gauss->end();ig++){616 for(int ig=gauss->begin();ig<gauss->end();ig++){ 617 617 618 618 gauss->GaussPoint(ig); … … 644 644 645 645 /*Intermediaries */ 646 int i,j ,ig;647 IssmDouble 648 IssmDouble 649 IssmDouble 650 IssmDouble 646 int i,j; 647 IssmDouble Jdettria,dt; 648 IssmDouble surface_mass_balance_g,basal_melting_g,thickness_g; 649 IssmDouble xyz_list[NUMVERTICES][3]; 650 IssmDouble L[NUMVERTICES]; 651 651 GaussTria* gauss=NULL; 652 652 … … 663 663 /* Start looping on the number of gaussian points: */ 664 664 gauss=new GaussTria(2); 665 for(i g=gauss->begin();ig<gauss->end();ig++){665 for(int ig=gauss->begin();ig<gauss->end();ig++){ 666 666 667 667 gauss->GaussPoint(ig); … … 689 689 690 690 /*Intermediaries */ 691 int i,j ,ig;691 int i,j; 692 692 int analysis_type; 693 IssmDouble 694 IssmDouble 695 IssmDouble 696 IssmDouble 693 IssmDouble Jdet; 694 IssmDouble xyz_list[NUMVERTICES][3]; 695 IssmDouble slope[2]; 696 IssmDouble basis[3]; 697 697 GaussTria* gauss=NULL; 698 698 … … 713 713 /* Start looping on the number of gaussian points: */ 714 714 gauss=new GaussTria(2); 715 for(i g=gauss->begin();ig<gauss->end();ig++){715 for(int ig=gauss->begin();ig<gauss->end();ig++){ 716 716 717 717 gauss->GaussPoint(ig); … … 2864 2864 2865 2865 /*Intermediaries*/ 2866 int i,j ,ig;2867 IssmDouble 2868 IssmDouble 2869 IssmDouble 2870 IssmDouble 2871 IssmDouble 2872 IssmDouble 2873 IssmDouble 2874 IssmDouble 2866 int i,j; 2867 IssmDouble xyz_list[NUMVERTICES][3]; 2868 IssmDouble viscosity,newviscosity,oldviscosity; 2869 IssmDouble viscosity_overshoot,thickness,Jdet; 2870 IssmDouble epsilon[3],oldepsilon[3]; /* epsilon=[exx,eyy,exy]; */ 2871 IssmDouble B[3][numdof]; 2872 IssmDouble Bprime[3][numdof]; 2873 IssmDouble D[3][3] = {0.0}; 2874 IssmDouble D_scalar; 2875 2875 GaussTria *gauss = NULL; 2876 2876 … … 2889 2889 /* Start looping on the number of gaussian points: */ 2890 2890 gauss=new GaussTria(2); 2891 for (ig=gauss->begin();ig<gauss->end();ig++){2891 for(int ig=gauss->begin();ig<gauss->end();ig++){ 2892 2892 2893 2893 gauss->GaussPoint(ig); … … 2928 2928 2929 2929 /*Intermediaries*/ 2930 int i,j ,ig;2930 int i,j; 2931 2931 int analysis_type; 2932 IssmDouble 2933 IssmDouble 2934 IssmDouble 2935 IssmDouble 2936 IssmDouble 2937 IssmDouble 2938 IssmDouble 2939 IssmDouble 2940 IssmDouble 2932 IssmDouble MAXSLOPE = .06; // 6 % 2933 IssmDouble MOUNTAINKEXPONENT = 10; 2934 IssmDouble slope_magnitude,alpha2; 2935 IssmDouble Jdet; 2936 IssmDouble L[2][numdof]; 2937 IssmDouble DL[2][2] = {{ 0,0 },{0,0}}; 2938 IssmDouble DL_scalar; 2939 IssmDouble slope[2] = {0.0,0.0}; 2940 IssmDouble xyz_list[NUMVERTICES][3]; 2941 2941 Friction *friction = NULL; 2942 2942 GaussTria *gauss = NULL; … … 2959 2959 /* Start looping on the number of gaussian points: */ 2960 2960 gauss=new GaussTria(2); 2961 for (ig=gauss->begin();ig<gauss->end();ig++){2961 for(int ig=gauss->begin();ig<gauss->end();ig++){ 2962 2962 2963 2963 gauss->GaussPoint(ig); … … 3018 3018 3019 3019 /*Intermediaries */ 3020 int i,j ,ig;3021 IssmDouble 3022 IssmDouble 3023 IssmDouble 3024 IssmDouble 3025 IssmDouble 3026 IssmDouble 3020 int i,j; 3021 IssmDouble driving_stress_baseline,thickness; 3022 IssmDouble Jdet; 3023 IssmDouble xyz_list[NUMVERTICES][3]; 3024 IssmDouble slope[2]; 3025 IssmDouble basis[3]; 3026 IssmDouble pe_g_gaussian[numdof]; 3027 3027 GaussTria* gauss=NULL; 3028 3028 … … 3038 3038 /* Start looping on the number of gaussian points: */ 3039 3039 gauss=new GaussTria(2); 3040 for(i g=gauss->begin();ig<gauss->end();ig++){3040 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3041 3041 3042 3042 gauss->GaussPoint(ig); … … 3122 3122 3123 3123 /*Intermediaries */ 3124 int i,j ,ig;3125 IssmDouble 3126 IssmDouble 3127 IssmDouble 3128 IssmDouble 3129 IssmDouble 3130 IssmDouble 3131 IssmDouble 3132 IssmDouble 3133 IssmDouble 3124 int i,j; 3125 IssmDouble xyz_list[NUMVERTICES][3]; 3126 IssmDouble Jdet,thickness; 3127 IssmDouble eps1dotdphii,eps1dotdphij; 3128 IssmDouble eps2dotdphii,eps2dotdphij; 3129 IssmDouble mu_prime; 3130 IssmDouble epsilon[3];/* epsilon=[exx,eyy,exy];*/ 3131 IssmDouble eps1[2],eps2[2]; 3132 IssmDouble phi[NUMVERTICES]; 3133 IssmDouble dphi[2][NUMVERTICES]; 3134 3134 GaussTria *gauss=NULL; 3135 3135 … … 3145 3145 /* Start looping on the number of gaussian points: */ 3146 3146 gauss=new GaussTria(2); 3147 for (ig=gauss->begin();ig<gauss->end();ig++){3147 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3148 3148 3149 3149 gauss->GaussPoint(ig); … … 3545 3545 void Tria::GradjBGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index){ 3546 3546 3547 int i ,ig;3547 int i; 3548 3548 int vertexpidlist[NUMVERTICES]; 3549 IssmDouble 3550 IssmDouble 3551 IssmDouble 3552 IssmDouble 3553 IssmDouble 3549 IssmDouble Jdet,weight; 3550 IssmDouble xyz_list[NUMVERTICES][3]; 3551 IssmDouble dbasis[NDOF2][NUMVERTICES]; 3552 IssmDouble dk[NDOF2]; 3553 IssmDouble grade_g[NUMVERTICES]={0.0}; 3554 3554 GaussTria *gauss=NULL; 3555 3555 … … 3562 3562 /* Start looping on the number of gaussian points: */ 3563 3563 gauss=new GaussTria(2); 3564 for (ig=gauss->begin();ig<gauss->end();ig++){3564 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3565 3565 3566 3566 gauss->GaussPoint(ig); … … 3585 3585 void Tria::GradjZGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index){ 3586 3586 3587 int i ,ig;3587 int i; 3588 3588 int vertexpidlist[NUMVERTICES]; 3589 IssmDouble 3590 IssmDouble 3591 IssmDouble 3592 IssmDouble 3593 IssmDouble 3589 IssmDouble Jdet,weight; 3590 IssmDouble xyz_list[NUMVERTICES][3]; 3591 IssmDouble dbasis[NDOF2][NUMVERTICES]; 3592 IssmDouble dk[NDOF2]; 3593 IssmDouble grade_g[NUMVERTICES]={0.0}; 3594 3594 GaussTria *gauss=NULL; 3595 3595 … … 3602 3602 /* Start looping on the number of gaussian points: */ 3603 3603 gauss=new GaussTria(2); 3604 for (ig=gauss->begin();ig<gauss->end();ig++){3604 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3605 3605 3606 3606 gauss->GaussPoint(ig); … … 3626 3626 3627 3627 /*Intermediaries*/ 3628 int i ,ig;3628 int i; 3629 3629 int doflist[NUMVERTICES]; 3630 IssmDouble 3631 IssmDouble 3632 IssmDouble 3633 IssmDouble 3634 IssmDouble 3635 IssmDouble 3630 IssmDouble vx,vy,lambda,mu,thickness,Jdet; 3631 IssmDouble viscosity_complement; 3632 IssmDouble dvx[NDOF2],dvy[NDOF2],dadjx[NDOF2],dadjy[NDOF2],dB[NDOF2]; 3633 IssmDouble xyz_list[NUMVERTICES][3]; 3634 IssmDouble basis[3],epsilon[3]; 3635 IssmDouble grad[NUMVERTICES]={0.0}; 3636 3636 GaussTria *gauss = NULL; 3637 3637 … … 3650 3650 /* Start looping on the number of gaussian points: */ 3651 3651 gauss=new GaussTria(4); 3652 for (ig=gauss->begin();ig<gauss->end();ig++){3652 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3653 3653 3654 3654 gauss->GaussPoint(ig); … … 3683 3683 3684 3684 /*Intermediaries*/ 3685 int i ,ig;3685 int i; 3686 3686 int doflist[NUMVERTICES]; 3687 IssmDouble 3688 IssmDouble 3689 IssmDouble 3690 IssmDouble 3691 IssmDouble 3692 IssmDouble 3687 IssmDouble vx,vy,lambda,mu,thickness,Jdet; 3688 IssmDouble viscosity_complement; 3689 IssmDouble dvx[NDOF2],dvy[NDOF2],dadjx[NDOF2],dadjy[NDOF2],dZ[NDOF2]; 3690 IssmDouble xyz_list[NUMVERTICES][3]; 3691 IssmDouble basis[3],epsilon[3]; 3692 IssmDouble grad[NUMVERTICES]={0.0}; 3693 3693 GaussTria *gauss = NULL; 3694 3694 … … 3707 3707 /* Start looping on the number of gaussian points: */ 3708 3708 gauss=new GaussTria(4); 3709 for (ig=gauss->begin();ig<gauss->end();ig++){3709 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3710 3710 3711 3711 gauss->GaussPoint(ig); … … 3739 3739 void Tria::GradjDragMacAyeal(Vector<IssmDouble>* gradient,int control_index){ 3740 3740 3741 int i ,ig;3741 int i; 3742 3742 int analysis_type; 3743 3743 int vertexpidlist[NUMVERTICES]; 3744 3744 int connectivity[NUMVERTICES]; 3745 IssmDouble 3746 IssmDouble 3747 IssmDouble 3748 IssmDouble 3749 IssmDouble 3750 IssmDouble 3751 IssmDouble 3752 IssmDouble 3745 IssmDouble vx,vy,lambda,mu,alpha_complement,Jdet; 3746 IssmDouble bed,thickness,Neff,drag; 3747 IssmDouble xyz_list[NUMVERTICES][3]; 3748 IssmDouble dk[NDOF2]; 3749 IssmDouble grade_g[NUMVERTICES]={0.0}; 3750 IssmDouble grade_g_gaussian[NUMVERTICES]; 3751 IssmDouble basis[3]; 3752 IssmDouble epsilon[3]; /* epsilon=[exx,eyy,exy];*/ 3753 3753 Friction* friction=NULL; 3754 3754 GaussTria *gauss=NULL; … … 3774 3774 /* Start looping on the number of gaussian points: */ 3775 3775 gauss=new GaussTria(4); 3776 for (ig=gauss->begin();ig<gauss->end();ig++){3776 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3777 3777 3778 3778 gauss->GaussPoint(ig); … … 3827 3827 void Tria::GradjDragGradient(Vector<IssmDouble>* gradient, int weight_index,int control_index){ 3828 3828 3829 int i ,ig;3829 int i; 3830 3830 int vertexpidlist[NUMVERTICES]; 3831 IssmDouble 3832 IssmDouble 3833 IssmDouble 3834 IssmDouble 3835 IssmDouble 3831 IssmDouble Jdet,weight; 3832 IssmDouble xyz_list[NUMVERTICES][3]; 3833 IssmDouble dbasis[NDOF2][NUMVERTICES]; 3834 IssmDouble dk[NDOF2]; 3835 IssmDouble grade_g[NUMVERTICES]={0.0}; 3836 3836 GaussTria *gauss=NULL; 3837 3837 … … 3845 3845 /* Start looping on the number of gaussian points: */ 3846 3846 gauss=new GaussTria(2); 3847 for (ig=gauss->begin();ig<gauss->end();ig++){3847 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3848 3848 3849 3849 gauss->GaussPoint(ig); … … 3888 3888 3889 3889 /*Intermediaries*/ 3890 int i ,ig;3890 int i; 3891 3891 int vertexpidlist[NUMVERTICES]; 3892 IssmDouble 3893 IssmDouble 3894 IssmDouble 3895 IssmDouble 3896 IssmDouble 3892 IssmDouble thickness,Jdet; 3893 IssmDouble basis[3]; 3894 IssmDouble Dlambda[2],dp[2]; 3895 IssmDouble xyz_list[NUMVERTICES][3]; 3896 IssmDouble grade_g[NUMVERTICES] = {0.0}; 3897 3897 GaussTria *gauss = NULL; 3898 3898 … … 3907 3907 /* Start looping on the number of gaussian points: */ 3908 3908 gauss=new GaussTria(2); 3909 for (ig=gauss->begin();ig<gauss->end();ig++){3909 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3910 3910 3911 3911 gauss->GaussPoint(ig); … … 3931 3931 3932 3932 /*Intermediaries*/ 3933 int i ,ig;3933 int i; 3934 3934 int vertexpidlist[NUMVERTICES]; 3935 IssmDouble 3936 IssmDouble 3937 IssmDouble 3938 IssmDouble 3939 IssmDouble 3935 IssmDouble thickness,Jdet; 3936 IssmDouble basis[3]; 3937 IssmDouble Dlambda[2],dp[2]; 3938 IssmDouble xyz_list[NUMVERTICES][3]; 3939 IssmDouble grade_g[NUMVERTICES] = {0.0}; 3940 3940 GaussTria *gauss = NULL; 3941 3941 … … 3950 3950 /* Start looping on the number of gaussian points: */ 3951 3951 gauss=new GaussTria(2); 3952 for (ig=gauss->begin();ig<gauss->end();ig++){3952 for(int ig=gauss->begin();ig<gauss->end();ig++){ 3953 3953 3954 3954 gauss->GaussPoint(ig); … … 4007 4007 /* Start looping on the number of gaussian points: */ 4008 4008 gauss=new GaussTria(2); 4009 for (ig=gauss->begin();ig<gauss->end();ig++){4009 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4010 4010 4011 4011 gauss->GaussPoint(ig); … … 4032 4032 const int numdof=2*NUMVERTICES; 4033 4033 4034 int i ,ig;4035 IssmDouble 4036 IssmDouble 4037 IssmDouble 4038 IssmDouble 4034 int i; 4035 IssmDouble Jelem=0,S,Jdet; 4036 IssmDouble misfit; 4037 IssmDouble vx,vy,vxobs,vyobs,weight; 4038 IssmDouble xyz_list[NUMVERTICES][3]; 4039 4039 GaussTria *gauss=NULL; 4040 4040 … … 4055 4055 /* Start looping on the number of gaussian points: */ 4056 4056 gauss=new GaussTria(3); 4057 for (ig=gauss->begin();ig<gauss->end();ig++){4057 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4058 4058 4059 4059 gauss->GaussPoint(ig); … … 4093 4093 const int numdof=NDOF2*NUMVERTICES; 4094 4094 4095 int i ,ig;4096 IssmDouble 4097 IssmDouble 4098 IssmDouble 4099 IssmDouble 4100 IssmDouble 4101 IssmDouble 4102 IssmDouble 4095 int i; 4096 IssmDouble Jelem=0; 4097 IssmDouble misfit,Jdet; 4098 IssmDouble epsvel=2.220446049250313e-16; 4099 IssmDouble meanvel=3.170979198376458e-05; /*1000 m/yr*/ 4100 IssmDouble velocity_mag,obs_velocity_mag; 4101 IssmDouble xyz_list[NUMVERTICES][3]; 4102 IssmDouble vx,vy,vxobs,vyobs,weight; 4103 4103 GaussTria *gauss=NULL; 4104 4104 … … 4118 4118 /* Start looping on the number of gaussian points: */ 4119 4119 gauss=new GaussTria(4); 4120 for (ig=gauss->begin();ig<gauss->end();ig++){4120 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4121 4121 4122 4122 gauss->GaussPoint(ig); … … 4158 4158 const int numdof=NDOF2*NUMVERTICES; 4159 4159 4160 int i ,ig;4160 int i; 4161 4161 int fit=-1; 4162 IssmDouble 4163 IssmDouble 4164 IssmDouble 4165 IssmDouble 4166 IssmDouble 4167 IssmDouble 4162 IssmDouble Jelem=0, S=0; 4163 IssmDouble epsvel=2.220446049250313e-16; 4164 IssmDouble meanvel=3.170979198376458e-05; /*1000 m/yr*/ 4165 IssmDouble misfit, Jdet; 4166 IssmDouble vx,vy,vxobs,vyobs,weight; 4167 IssmDouble xyz_list[NUMVERTICES][3]; 4168 4168 GaussTria *gauss=NULL; 4169 4169 … … 4183 4183 /* Start looping on the number of gaussian points: */ 4184 4184 gauss=new GaussTria(4); 4185 for (ig=gauss->begin();ig<gauss->end();ig++){4185 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4186 4186 4187 4187 gauss->GaussPoint(ig); … … 4224 4224 const int numdof=NDOF2*NUMVERTICES; 4225 4225 4226 int i,ig; 4227 IssmDouble Jelem=0; 4228 IssmDouble misfit,Jdet; 4229 IssmDouble vx,vy,vxobs,vyobs,weight; 4230 IssmDouble xyz_list[NUMVERTICES][3]; 4226 IssmDouble Jelem=0; 4227 IssmDouble misfit,Jdet; 4228 IssmDouble vx,vy,vxobs,vyobs,weight; 4229 IssmDouble xyz_list[NUMVERTICES][3]; 4231 4230 GaussTria *gauss=NULL; 4232 4231 … … 4246 4245 /* Start looping on the number of gaussian points: */ 4247 4246 gauss=new GaussTria(2); 4248 for (ig=gauss->begin();ig<gauss->end();ig++){4247 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4249 4248 4250 4249 gauss->GaussPoint(ig); … … 4284 4283 const int numdof=2*NUMVERTICES; 4285 4284 4286 int i,ig; 4287 IssmDouble Jelem=0; 4288 IssmDouble scalex=1,scaley=1; 4289 IssmDouble misfit,Jdet; 4290 IssmDouble epsvel=2.220446049250313e-16; 4291 IssmDouble meanvel=3.170979198376458e-05; /*1000 m/yr*/ 4292 IssmDouble vx,vy,vxobs,vyobs,weight; 4293 IssmDouble xyz_list[NUMVERTICES][3]; 4285 IssmDouble Jelem=0; 4286 IssmDouble scalex=1,scaley=1; 4287 IssmDouble misfit,Jdet; 4288 IssmDouble epsvel=2.220446049250313e-16; 4289 IssmDouble meanvel=3.170979198376458e-05; /*1000 m/yr*/ 4290 IssmDouble vx,vy,vxobs,vyobs,weight; 4291 IssmDouble xyz_list[NUMVERTICES][3]; 4294 4292 GaussTria *gauss=NULL; 4295 4293 … … 4309 4307 /* Start looping on the number of gaussian points: */ 4310 4308 gauss=new GaussTria(4); 4311 for (ig=gauss->begin();ig<gauss->end();ig++){4309 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4312 4310 4313 4311 gauss->GaussPoint(ig); … … 4368 4366 /* Start looping on the number of gaussian points: */ 4369 4367 gauss=new GaussTria(2); 4370 for (ig=gauss->begin();ig<gauss->end();ig++){4368 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4371 4369 4372 4370 gauss->GaussPoint(ig); … … 4415 4413 /* Start looping on the number of gaussian points: */ 4416 4414 gauss=new GaussTria(2); 4417 for (ig=gauss->begin();ig<gauss->end();ig++){4415 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4418 4416 4419 4417 gauss->GaussPoint(ig); … … 4467 4465 /* Start looping on the number of gaussian points: */ 4468 4466 gauss=new GaussTria(2); 4469 for (ig=gauss->begin();ig<gauss->end();ig++){4467 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4470 4468 4471 4469 gauss->GaussPoint(ig); … … 4496 4494 4497 4495 /*Intermediaries*/ 4498 int i ,ig;4499 IssmDouble 4500 IssmDouble 4501 IssmDouble 4502 IssmDouble 4496 int i; 4497 IssmDouble thickness,thicknessobs,weight; 4498 IssmDouble Jdet; 4499 IssmDouble Jelem = 0; 4500 IssmDouble xyz_list[NUMVERTICES][3]; 4503 4501 GaussTria *gauss = NULL; 4504 IssmDouble 4502 IssmDouble dH[2]; 4505 4503 4506 4504 /*If on water, return 0: */ … … 4515 4513 /* Start looping on the number of gaussian points: */ 4516 4514 gauss=new GaussTria(2); 4517 for (ig=gauss->begin();ig<gauss->end();ig++){4515 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4518 4516 4519 4517 gauss->GaussPoint(ig); … … 4544 4542 4545 4543 /*Intermediaries */ 4546 int i, ig,resp;4544 int i,resp; 4547 4545 IssmDouble Jdet; 4548 4546 IssmDouble thickness,thicknessobs,weight; … … 4571 4569 /* Start looping on the number of gaussian points: */ 4572 4570 gauss=new GaussTria(2); 4573 for(i g=gauss->begin();ig<gauss->end();ig++){4571 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4574 4572 4575 4573 gauss->GaussPoint(ig); … … 4631 4629 4632 4630 /*Intermediaries */ 4633 int i,resp ,ig;4631 int i,resp; 4634 4632 int *responses=NULL; 4635 4633 int num_responses; … … 4667 4665 /* Start looping on the number of gaussian points: */ 4668 4666 gauss=new GaussTria(4); 4669 for (ig=gauss->begin();ig<gauss->end();ig++){4667 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4670 4668 4671 4669 gauss->GaussPoint(ig); … … 4813 4811 4814 4812 /*Intermediaries */ 4815 int i,resp ,ig;4813 int i,resp; 4816 4814 int *responses=NULL; 4817 4815 int num_responses; … … 4849 4847 /* Start looping on the number of gaussian points: */ 4850 4848 gauss=new GaussTria(4); 4851 for (ig=gauss->begin();ig<gauss->end();ig++){4849 for(int ig=gauss->begin();ig<gauss->end();ig++){ 4852 4850 4853 4851 gauss->GaussPoint(ig); … … 5016 5014 /* Start looping on the number of gaussian points: */ 5017 5015 gauss=new GaussTria(2); 5018 for (ig=gauss->begin();ig<gauss->end();ig++){5016 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5019 5017 5020 5018 gauss->GaussPoint(ig); … … 5065 5063 5066 5064 /*Intermediaries */ 5067 int i,j ,ig;5065 int i,j; 5068 5066 bool incomplete_adjoint; 5069 IssmDouble xyz_list[NUMVERTICES][3]; 5070 IssmDouble Jdet,thickness; 5071 IssmDouble eps1dotdphii,eps1dotdphij; 5072 IssmDouble eps2dotdphii,eps2dotdphij; 5073 IssmDouble mu_prime; 5074 IssmDouble epsilon[3];/* epsilon=[exx,eyy,exy];*/ 5075 IssmDouble eps1[2],eps2[2]; 5076 IssmDouble phi[NUMVERTICES]; 5077 IssmDouble dphi[2][NUMVERTICES]; 5067 IssmDouble xyz_list[NUMVERTICES][3]; 5068 IssmDouble Jdet,thickness; 5069 IssmDouble eps1dotdphii,eps1dotdphij; 5070 IssmDouble eps2dotdphii,eps2dotdphij; 5071 IssmDouble mu_prime; 5072 IssmDouble epsilon[3];/* epsilon=[exx,eyy,exy];*/ 5073 IssmDouble eps1[2],eps2[2]; 5074 IssmDouble dphi[2][NUMVERTICES]; 5078 5075 GaussTria *gauss=NULL; 5079 5076 … … 5091 5088 /* Start looping on the number of gaussian points: */ 5092 5089 gauss=new GaussTria(2); 5093 for (ig=gauss->begin();ig<gauss->end();ig++){5090 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5094 5091 5095 5092 gauss->GaussPoint(ig); … … 5315 5312 5316 5313 /*Constants*/ 5317 const int 5314 const int numdof=NDOF1*NUMVERTICES; 5318 5315 5319 5316 /*Intermediaries */ 5320 IssmDouble 5321 int i,j ,ig;5322 IssmDouble 5323 IssmDouble 5324 IssmDouble 5325 IssmDouble 5326 IssmDouble 5327 IssmDouble 5328 IssmDouble 5329 IssmDouble 5330 IssmDouble 5331 IssmDouble 5332 IssmDouble 5333 IssmDouble 5317 IssmDouble diffusivity; 5318 int i,j; 5319 IssmDouble Jdettria,DL_scalar,dt,h; 5320 IssmDouble vx,vy,vel,dvxdx,dvydy; 5321 IssmDouble dvx[2],dvy[2]; 5322 IssmDouble v_gauss[2]={0.0}; 5323 IssmDouble xyz_list[NUMVERTICES][3]; 5324 IssmDouble L[NUMVERTICES]; 5325 IssmDouble B[2][NUMVERTICES]; 5326 IssmDouble Bprime[2][NUMVERTICES]; 5327 IssmDouble K[2][2] ={0.0}; 5328 IssmDouble KDL[2][2] ={0.0}; 5329 IssmDouble DL[2][2] ={0.0}; 5330 IssmDouble DLprime[2][2] ={0.0}; 5334 5331 GaussTria *gauss=NULL; 5335 5332 … … 5353 5350 /* Start looping on the number of gaussian points: */ 5354 5351 gauss=new GaussTria(2); 5355 for (ig=gauss->begin();ig<gauss->end();ig++){5352 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5356 5353 5357 5354 gauss->GaussPoint(ig); … … 5423 5420 5424 5421 /*Intermediaries */ 5425 int i,j ,ig;5426 IssmDouble 5427 IssmDouble 5428 IssmDouble 5429 IssmDouble 5430 IssmDouble 5422 int i,j; 5423 IssmDouble Jdettria,dt; 5424 IssmDouble basal_melting_g; 5425 IssmDouble old_watercolumn_g; 5426 IssmDouble xyz_list[NUMVERTICES][3]; 5427 IssmDouble basis[numdof]; 5431 5428 GaussTria* gauss=NULL; 5432 5429 … … 5446 5443 /* Start looping on the number of gaussian points: */ 5447 5444 gauss=new GaussTria(2); 5448 for(i g=gauss->begin();ig<gauss->end();ig++){5445 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5449 5446 5450 5447 gauss->GaussPoint(ig); … … 5697 5694 /*Intermediaries */ 5698 5695 int stabilization; 5699 int i,j, ig,dim;5700 IssmDouble 5701 IssmDouble 5702 IssmDouble 5703 IssmDouble 5704 IssmDouble 5705 IssmDouble 5706 IssmDouble 5707 IssmDouble 5708 IssmDouble 5709 IssmDouble 5710 IssmDouble 5696 int i,j,dim; 5697 IssmDouble Jdettria,vx,vy,dvxdx,dvydy,vel,h; 5698 IssmDouble dvx[2],dvy[2]; 5699 IssmDouble xyz_list[NUMVERTICES][3]; 5700 IssmDouble L[NUMVERTICES]; 5701 IssmDouble B[2][NUMVERTICES]; 5702 IssmDouble Bprime[2][NUMVERTICES]; 5703 IssmDouble K[2][2] = {0.0}; 5704 IssmDouble KDL[2][2] = {0.0}; 5705 IssmDouble DL[2][2] = {0.0}; 5706 IssmDouble DLprime[2][2] = {0.0}; 5707 IssmDouble DL_scalar; 5711 5708 GaussTria *gauss = NULL; 5712 5709 … … 5732 5729 /*Start looping on the number of gaussian points:*/ 5733 5730 gauss=new GaussTria(2); 5734 for (ig=gauss->begin();ig<gauss->end();ig++){5731 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5735 5732 5736 5733 gauss->GaussPoint(ig); … … 5806 5803 5807 5804 /*Intermediaries*/ 5808 int i,j, ig,dim;5809 IssmDouble 5810 IssmDouble 5811 IssmDouble 5812 IssmDouble 5813 IssmDouble 5814 IssmDouble 5805 int i,j,dim; 5806 IssmDouble vx,vy,Jdettria; 5807 IssmDouble xyz_list[NUMVERTICES][3]; 5808 IssmDouble B[2][NUMVERTICES]; 5809 IssmDouble Bprime[2][NUMVERTICES]; 5810 IssmDouble DL[2][2]={0.0}; 5811 IssmDouble DL_scalar; 5815 5812 GaussTria *gauss=NULL; 5816 5813 … … 5826 5823 /*Start looping on the number of gaussian points:*/ 5827 5824 gauss=new GaussTria(2); 5828 for (ig=gauss->begin();ig<gauss->end();ig++){5825 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5829 5826 5830 5827 gauss->GaussPoint(ig); … … 5874 5871 5875 5872 /*Intermediaries */ 5876 int i,j ,ig;5877 IssmDouble 5878 IssmDouble 5879 IssmDouble 5873 int i,j; 5874 IssmDouble xyz_list[NUMVERTICES][3]; 5875 IssmDouble dhdt_g,basal_melting_g,surface_mass_balance_g,Jdettria; 5876 IssmDouble L[NUMVERTICES]; 5880 5877 GaussTria* gauss=NULL; 5881 5878 … … 5891 5888 /* Start looping on the number of gaussian points: */ 5892 5889 gauss=new GaussTria(2); 5893 for(i g=gauss->begin();ig<gauss->end();ig++){5890 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5894 5891 5895 5892 gauss->GaussPoint(ig); … … 5917 5914 5918 5915 /*Intermediaries */ 5919 int i,j ,ig;5920 IssmDouble 5921 IssmDouble 5922 IssmDouble 5916 int i,j; 5917 IssmDouble xyz_list[NUMVERTICES][3]; 5918 IssmDouble basal_melting_g,surface_mass_balance_g,dhdt_g,Jdettria; 5919 IssmDouble L[NUMVERTICES]; 5923 5920 GaussTria* gauss=NULL; 5924 5921 … … 5934 5931 /* Start looping on the number of gaussian points: */ 5935 5932 gauss=new GaussTria(2); 5936 for(i g=gauss->begin();ig<gauss->end();ig++){5933 for(int ig=gauss->begin();ig<gauss->end();ig++){ 5937 5934 5938 5935 gauss->GaussPoint(ig); -
issm/trunk-jpl/src/c/classes/objects/Inputs/TriaP1Input.cpp
r13622 r13787 355 355 356 356 /*Intermediaries*/ 357 int i; 358 TriaP1Input *xinputB = NULL; 359 int B_numvalues; 360 const int numnodes = 3; 361 IssmDouble minvalues[numnodes]; 357 int i; 358 TriaP1Input *xinputB = NULL; 359 const int numnodes = 3; 360 IssmDouble minvalues[numnodes]; 362 361 363 362 /*Check that inputB is of the same type*/ … … 388 387 int i; 389 388 TriaP1Input *xinputB = NULL; 390 int B_numvalues;391 389 const int numnodes = 3; 392 390 IssmDouble maxvalues[numnodes]; -
issm/trunk-jpl/src/c/classes/objects/KML/KMLFileReadUtils.cpp
r13056 r13787 545 545 FILE* fid){ 546 546 547 int i=-1 ,j;547 int i=-1; 548 548 char* kstr; 549 549 char* ktok; -
issm/trunk-jpl/src/c/classes/objects/Loads/Riftfront.cpp
r13761 r13787 377 377 const int numdof = NDOF2*NUMVERTICES; 378 378 int dofs[1] = {0}; 379 IssmDouble Ke_gg[4][4];380 379 IssmDouble thickness; 381 380 IssmDouble h[2]; … … 457 456 ElementVector* Riftfront::PenaltyCreatePVectorDiagnosticHoriz(IssmDouble kmax){ 458 457 459 const int 460 int i,j;461 IssmDouble 462 IssmDouble 463 IssmDouble 464 IssmDouble 465 IssmDouble 466 IssmDouble 467 IssmDouble 468 IssmDouble 469 IssmDouble 470 IssmDouble 471 IssmDouble 472 IssmDouble 473 int 474 bool 458 const int numdof = NDOF2*NUMVERTICES; 459 int j; 460 IssmDouble rho_ice; 461 IssmDouble rho_water; 462 IssmDouble gravity; 463 IssmDouble thickness; 464 IssmDouble h[2]; 465 IssmDouble bed; 466 IssmDouble b[2]; 467 IssmDouble pressure; 468 IssmDouble pressure_litho; 469 IssmDouble pressure_air; 470 IssmDouble pressure_melange; 471 IssmDouble pressure_water; 472 int fill; 473 bool shelf; 475 474 476 475 /*Objects: */ 477 Tria *tria1= NULL;478 Tria *tria2= NULL;476 Tria *tria1 = NULL; 477 Tria *tria2 = NULL; 479 478 480 479 /*enum of element? */ -
issm/trunk-jpl/src/c/modules/ContourToNodesx/ContourToNodesx.cpp
r13762 r13787 7 7 8 8 int i; 9 int m,n;10 9 11 10 /*Contour:*/ … … 42 41 /*Contour:*/ 43 42 Contour<IssmPDouble>* contouri=NULL; 44 int numnodes;45 43 double* xc=NULL; 46 44 double* yc=NULL; 47 double value;48 45 49 46 /*output: */ -
issm/trunk-jpl/src/c/modules/HoleFillerx/HoleFillerx.cpp
r13762 r13787 16 16 long iii, jjj; 17 17 long test; 18 float howlong;19 18 float nsteps, ssteps, wsteps, esteps; 20 19 float nwsteps, nesteps, swsteps, sesteps; -
issm/trunk-jpl/src/c/modules/InterpFromGridToMeshx/InterpFromGridToMeshx.cpp
r13622 r13787 25 25 double* x=NULL; 26 26 double* y=NULL; 27 double x_grid,y_grid;28 27 int i; 29 28 -
issm/trunk-jpl/src/c/modules/InterpFromMesh2dx/InterpFromMesh2dx.cpp
r13622 r13787 19 19 20 20 /*Intermediary*/ 21 int i ,j;21 int i; 22 22 int interpolation_type; 23 23 bool debug; 24 double area;25 double area_1,area_2,area_3;26 double data_value;27 24 double xmin,xmax; 28 25 double ymin,ymax; -
issm/trunk-jpl/src/c/modules/InterpFromMeshToMesh2dx/InterpFromMeshToMesh2dx.cpp
r13762 r13787 25 25 R2 r; 26 26 I2 I; 27 int i,j ,k;27 int i,j; 28 28 int it; 29 29 int i0,i1,i2; -
issm/trunk-jpl/src/c/modules/ModelProcessorx/Control/CreateParametersControl.cpp
r13622 r13787 14 14 void CreateParametersControl(Parameters** pparameters,IoModel* iomodel,int solution_type,int analysis_type){ 15 15 16 int i;17 16 Parameters *parameters = NULL; 18 17 bool control_analysis; … … 21 20 int num_cm_responses; 22 21 int *control_type = NULL; 23 IssmDouble 24 IssmDouble 25 IssmDouble 26 IssmDouble 22 IssmDouble *cm_responses = NULL; 23 IssmDouble *cm_jump = NULL; 24 IssmDouble *optscal = NULL; 25 IssmDouble *maxiter = NULL; 27 26 28 27 /*Get parameters: */ -
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp
r13622 r13787 16 16 17 17 /*Intermediary*/ 18 int i ,j,k,n;18 int i; 19 19 int dim,materials_type; 20 20 int numberofelements; -
issm/trunk-jpl/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateConstraintsDiagnosticHoriz.cpp
r13622 r13787 44 44 Constraints *constraints = NULL; 45 45 SpcStatic *spcstatic = NULL; 46 int node1,node2;47 46 int dim; 48 47 int numberofvertices; -
issm/trunk-jpl/src/c/modules/ModelProcessorx/DistributeNumDofs.cpp
r13622 r13787 13 13 14 14 int numdofs=2; //default numdofs 15 int i;16 15 int* doftype=NULL; 17 16 -
issm/trunk-jpl/src/c/modules/SystemMatricesx/SystemMatricesx.cpp
r13622 r13787 13 13 14 14 /*intermediary: */ 15 int i ,j;15 int i; 16 16 int fsize,ssize; 17 17 int connectivity, numberofdofspernode; -
issm/trunk-jpl/src/c/solutions/dakota_core.cpp
r13621 r13787 43 43 44 44 #ifdef _HAVE_DAKOTA_ //only works if dakota library has been compiled in. 45 #include "ParallelLibrary.H" 46 #include "ProblemDescDB.H" 47 #include "DakotaStrategy.H" 48 #include "DakotaModel.H" 49 #include "DakotaInterface.H" 50 45 #include <ParallelLibrary.H> 46 #include <ProblemDescDB.H> 47 #include <DakotaStrategy.H> 48 #include <DakotaModel.H> 49 #include <DakotaInterface.H> 51 50 #endif 52 51 /*}}}*/ -
issm/trunk-jpl/src/c/toolkits/petsc/patches/ISSMToPetscInsertMode.cpp
r13622 r13787 10 10 11 11 /*Petsc includes: */ 12 #include "petscmat.h"13 #include "petscvec.h"14 #include "petscksp.h"12 #include <petscmat.h> 13 #include <petscvec.h> 14 #include <petscksp.h> 15 15 16 16 /*ISSM includes: */ -
issm/trunk-jpl/src/c/toolkits/petsc/patches/ISSMToPetscMatrixType.cpp
r13754 r13787 10 10 11 11 /*Petsc includes: */ 12 #include "petscmat.h"13 #include "petscvec.h"14 #include "petscksp.h"12 #include <petscmat.h> 13 #include <petscvec.h> 14 #include <petscksp.h> 15 15 16 16 /*ISSM includes: */ -
issm/trunk-jpl/src/c/toolkits/petsc/patches/ISSMToPetscNormMode.cpp
r13622 r13787 10 10 11 11 /*Petsc includes: */ 12 #include "petscmat.h"13 #include "petscvec.h"14 #include "petscksp.h"12 #include <petscmat.h> 13 #include <petscvec.h> 14 #include <petscksp.h> 15 15 16 16 /*ISSM includes: */
Note:
See TracChangeset
for help on using the changeset viewer.