Changeset 26234
- Timestamp:
- 05/04/21 10:02:06 (4 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/LoveAnalysis.cpp
r26047 r26234 19 19 }/*}}}*/ 20 20 void LoveAnalysis::UpdateParameters(Parameters* parameters,IoModel* iomodel,int solution_enum,int analysis_enum){/*{{{*/ 21 22 21 IssmDouble* frequencies = NULL; 23 22 int nfreq; … … 33 32 parameters->AddObject(iomodel->CopyConstantObject("md.love.r0",LoveR0Enum)); 34 33 parameters->AddObject(iomodel->CopyConstantObject("md.love.mu0",LoveMu0Enum)); 34 parameters->AddObject(iomodel->CopyConstantObject("md.love.Gravitational_Constant",LoveGravitationalConstantEnum)); 35 35 parameters->AddObject(iomodel->CopyConstantObject("md.love.allow_layer_deletion",LoveAllowLayerDeletionEnum)); 36 parameters->AddObject(iomodel->CopyConstantObject("md.love.underflow_tol",LoveUnderflowTolEnum)); 37 parameters->AddObject(iomodel->CopyConstantObject("md.love.integration_steps_per_layer",LoveIntStepsPerLayerEnum)); 38 parameters->AddObject(iomodel->CopyConstantObject("md.love.istemporal",LoveIsTemporalEnum)); 39 parameters->AddObject(iomodel->CopyConstantObject("md.love.n_temporal_iterations",LoveNTemporalIterationsEnum)); 36 40 parameters->AddObject(iomodel->CopyConstantObject("md.love.love_kernels",LoveKernelsEnum)); 37 41 parameters->AddObject(iomodel->CopyConstantObject("md.love.forcing_type",LoveForcingTypeEnum)); 42 parameters->AddObject(iomodel->CopyConstantObject("md.love.inner_core_boundary",LoveInnerCoreBoundaryEnum)); 43 parameters->AddObject(iomodel->CopyConstantObject("md.love.core_mantle_boundary",LoveCoreMantleBoundaryEnum)); 38 44 }/*}}}*/ 39 45 void LoveAnalysis::UpdateConstraints(FemModel* femmodel){/*{{{*/ -
issm/trunk-jpl/src/c/classes/Materials/Matlitho.cpp
r25508 r26234 21 21 this->burgers_viscosity=NULL; 22 22 this->burgers_mu=NULL; 23 this->ebm_alpha=NULL; 24 this->ebm_delta=NULL; 25 this->ebm_taul=NULL; 26 this->ebm_tauh=NULL; 23 27 this->density=NULL; 24 this-> isburgers=NULL;28 this->rheologymodel=NULL; 25 29 this->issolid=NULL; 26 30 return; … … 29 33 Matlitho::Matlitho(int matlitho_mid, IoModel* iomodel){/*{{{*/ 30 34 31 IssmDouble* isburgersd=NULL;35 IssmDouble* rheologymodeld=NULL; 32 36 IssmDouble* issolidd=NULL; 33 37 … … 53 57 xMemCpy<IssmDouble>(this->burgers_mu, iomodel->Data("md.materials.burgers_mu"),this->numlayers); 54 58 59 this->ebm_alpha=xNew<IssmDouble>(this->numlayers); 60 xMemCpy<IssmDouble>(this->ebm_alpha, iomodel->Data("md.materials.ebm_alpha"),this->numlayers); 61 62 this->ebm_delta=xNew<IssmDouble>(this->numlayers); 63 xMemCpy<IssmDouble>(this->ebm_delta, iomodel->Data("md.materials.ebm_delta"),this->numlayers); 64 65 this->ebm_taul=xNew<IssmDouble>(this->numlayers); 66 xMemCpy<IssmDouble>(this->ebm_taul, iomodel->Data("md.materials.ebm_taul"),this->numlayers); 67 68 this->ebm_tauh=xNew<IssmDouble>(this->numlayers); 69 xMemCpy<IssmDouble>(this->ebm_tauh, iomodel->Data("md.materials.ebm_tauh"),this->numlayers); 70 55 71 this->density=xNew<IssmDouble>(this->numlayers); 56 72 xMemCpy<IssmDouble>(this->density, iomodel->Data("md.materials.density"),this->numlayers); 57 73 58 this-> isburgers=xNew<IssmDouble>(this->numlayers);59 xMemCpy<IssmDouble>(this-> isburgers, iomodel->Data("md.materials.isburgers"),this->numlayers);74 this->rheologymodel=xNew<IssmDouble>(this->numlayers); 75 xMemCpy<IssmDouble>(this->rheologymodel, iomodel->Data("md.materials.rheologymodel"),this->numlayers); 60 76 61 77 this->issolid=xNew<IssmDouble>(this->numlayers); 62 78 xMemCpy<IssmDouble>(this->issolid, iomodel->Data("md.materials.issolid"),this->numlayers); 63 79 64 /* isburgersd= xNew<IssmDouble>(this->numlayers);65 this-> isburgers=xNew<bool>(this->numlayers);66 xMemCpy<IssmDouble>( isburgersd, iomodel->Data("md.materials.isburgers"),this->numlayers);67 for (int i=0;i<this->numlayers;i++)this-> isburgers[i]=reCast<bool,IssmDouble>(isburgersd[i]);80 /*rheologymodeld= xNew<IssmDouble>(this->numlayers); 81 this->rheologymodel=xNew<bool>(this->numlayers); 82 xMemCpy<IssmDouble>(rheologymodeld, iomodel->Data("md.materials.rheologymodel"),this->numlayers); 83 for (int i=0;i<this->numlayers;i++)this->rheologymodel[i]=reCast<bool,IssmDouble>(rheologymodeld[i]); 68 84 69 85 issolidd= xNew<IssmDouble>(this->numlayers); … … 73 89 74 90 /*free ressources: */ 75 xDelete<IssmDouble>( isburgersd);91 xDelete<IssmDouble>(rheologymodeld); 76 92 xDelete<IssmDouble>(issolidd); 77 93 } … … 85 101 xDelete<IssmDouble>(burgers_viscosity); 86 102 xDelete<IssmDouble>(burgers_mu); 103 xDelete<IssmDouble>(ebm_alpha); 104 xDelete<IssmDouble>(ebm_delta); 105 xDelete<IssmDouble>(ebm_taul); 106 xDelete<IssmDouble>(ebm_tauh); 87 107 xDelete<IssmDouble>(density); 88 xDelete<IssmDouble>( isburgers);108 xDelete<IssmDouble>(rheologymodel); 89 109 xDelete<IssmDouble>(issolid); 90 110 … … 116 136 matlitho->burgers_viscosity=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->burgers_viscosity, this->burgers_viscosity,this->numlayers); 117 137 matlitho->burgers_mu=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->burgers_mu, this->burgers_mu,this->numlayers); 138 matlitho->ebm_alpha=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->ebm_alpha, this->ebm_alpha,this->numlayers); 139 matlitho->ebm_delta=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->ebm_delta, this->ebm_delta,this->numlayers); 140 matlitho->ebm_taul=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->ebm_taul, this->ebm_taul,this->numlayers); 141 matlitho->ebm_tauh=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->ebm_tauh, this->ebm_tauh,this->numlayers); 118 142 matlitho->density=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->density, this->density,this->numlayers); 119 matlitho-> isburgers=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->isburgers, this->isburgers,this->numlayers);143 matlitho->rheologymodel=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->rheologymodel, this->rheologymodel,this->numlayers); 120 144 matlitho->issolid=xNew<IssmDouble>(this->numlayers); xMemCpy<IssmDouble>(matlitho->issolid, this->issolid,this->numlayers); 121 /*matlitho-> isburgers=xNew<bool>(this->numlayers); for(int i=0;i<this->numlayers;i++)matlitho->isburgers[i]=this->isburgers[i];145 /*matlitho->rheologymodel=xNew<bool>(this->numlayers); for(int i=0;i<this->numlayers;i++)matlitho->rheologymodel[i]=this->rheologymodel[i]; 122 146 matlitho->issolid=xNew<bool>(this->numlayers); for(int i=0;i<this->numlayers;i++)matlitho->issolid[i]=this->issolid[i];*/ 123 147 } … … 136 160 _printf_(" mid: " << mid << "\n"); 137 161 _printf_(" numlayers: " << numlayers << "\n"); 138 _printf_("layer radius viscosity lame_lambda lame_mu burgers_viscosity burgers_mu density isburgersissolid\n");162 _printf_("layer radius viscosity lame_lambda lame_mu burgers_viscosity burgers_mu ebm_alpha ebm_delta ebm_taul ebm_tauh density rheologymodel issolid\n"); 139 163 for (int i=0;i<numlayers;i++){ 140 _printf_(i << " " << radius[i] << " " << viscosity[i] << " " << lame_lambda[i] << " " << lame_mu[i] << " " << burgers_viscosity[i] << " " << burgers_mu[i] << " " << density[i] << " " << isburgers[i] << " " << issolid[i]);164 _printf_(i << " " << radius[i] << " " << viscosity[i] << " " << lame_lambda[i] << " " << lame_mu[i] << " " << burgers_viscosity[i] << " " << burgers_mu[i] << " " << ebm_alpha[i] << " " << ebm_delta[i] << " " << ebm_taul[i] << " " << ebm_tauh[i] << " " << density[i] << " " << rheologymodel[i] << " " << issolid[i]); 141 165 } 142 166 return; … … 158 182 marshallhandle->call(this->burgers_viscosity,numlayers); 159 183 marshallhandle->call(this->burgers_mu,numlayers); 184 marshallhandle->call(this->ebm_alpha,numlayers); 185 marshallhandle->call(this->ebm_delta,numlayers); 186 marshallhandle->call(this->ebm_taul,numlayers); 187 marshallhandle->call(this->ebm_tauh,numlayers); 160 188 marshallhandle->call(this->density,numlayers); 161 marshallhandle->call(this-> isburgers,numlayers);189 marshallhandle->call(this->rheologymodel,numlayers); 162 190 marshallhandle->call(this->issolid,numlayers); 163 191 } … … 169 197 burgers_viscosity = NULL; 170 198 burgers_mu = NULL; 199 ebm_alpha = NULL; 200 ebm_delta = NULL; 201 ebm_taul = NULL; 202 ebm_tauh = NULL; 171 203 density = NULL; 172 isburgers= NULL;204 rheologymodel = NULL; 173 205 issolid = NULL; 174 206 } -
issm/trunk-jpl/src/c/classes/Materials/Matlitho.h
r25508 r26234 23 23 IssmDouble* burgers_viscosity; 24 24 IssmDouble* burgers_mu; 25 IssmDouble* ebm_alpha; 26 IssmDouble* ebm_delta; 27 IssmDouble* ebm_taul; 28 IssmDouble* ebm_tauh; 25 29 IssmDouble* density; 26 IssmDouble* isburgers;30 IssmDouble* rheologymodel; 27 31 IssmDouble* issolid; 28 32 -
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp
r26097 r26234 198 198 case MatlithoEnum: 199 199 { /*{{{*/ 200 iomodel->FetchData( 9,"md.materials.radius","md.materials.viscosity","md.materials.lame_lambda","md.materials.lame_mu","md.materials.burgers_viscosity","md.materials.burgers_mu","md.materials.isburgers","md.materials.issolid","md.materials.density");200 iomodel->FetchData(13,"md.materials.radius","md.materials.viscosity","md.materials.lame_lambda","md.materials.lame_mu","md.materials.burgers_viscosity","md.materials.burgers_mu","md.materials.ebm_alpha","md.materials.ebm_delta","md.materials.ebm_taul","md.materials.ebm_tauh","md.materials.rheologymodel","md.materials.issolid","md.materials.density"); 201 201 materials->AddObject(new Matlitho(iomodel->numberofelements+1,iomodel)); 202 iomodel->DeleteData( 9,"md.materials.radius","md.materials.viscosity","md.materials.lame_lambda","md.materials.lame_mu","md.materials.burgers_viscosity","md.materials.burgers_mu","md.materials.isburgers","md.materials.issolid","md.materials.density");202 iomodel->DeleteData(13,"md.materials.radius","md.materials.viscosity","md.materials.lame_lambda","md.materials.lame_mu","md.materials.burgers_viscosity","md.materials.burgers_mu","md.materials.ebm_alpha","md.materials.ebm_delta","md.materials.ebm_taul","md.materials.ebm_tauh","md.materials.rheologymodel","md.materials.issolid","md.materials.density"); 203 203 } 204 204 /*}}}*/
Note:
See TracChangeset
for help on using the changeset viewer.