Changeset 17192
- Timestamp:
- 01/29/14 09:02:20 (11 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.cpp
r17176 r17192 323 323 324 324 IssmDouble* eplHeads = xNew<IssmDouble>(numnodes); 325 IssmDouble* eplOldHeads = xNew<IssmDouble>(numnodes); 325 /* IssmDouble* relaxed = xNew<IssmDouble>(numnodes); */ 326 /* IssmDouble* eplOldHeads = xNew<IssmDouble>(numnodes); */ 326 327 IssmDouble Stepping; 327 328 329 330 /*Get previous water head*/ 331 //basalelement->GetInputListOnNodes(&eplOldHeads[0],EplHeadEnum); 328 332 329 333 /*Use the dof list to index into the solution vector: */ … … 332 336 if(xIsNan<IssmDouble>(eplHeads[i])) _error_("NaN found in solution vector"); 333 337 } 334 335 /*Get previous water head*/336 /* basalelement->GetInputListOnNodes(&eplOldHeads[0],EplHeadEnum); */337 338 338 339 /* for(i=0;i<numnodes;i++) { */ 339 /* eplHeads[i] = eplOldHeads[i]+0.8*(eplHeads[i]-eplOldHeads[i]); */340 /* relaxed[i] = eplOldHeads[i]+0.8*(eplHeads[i]-eplOldHeads[i]); */ 340 341 /* } */ 341 342 /*Add input to the element: */ … … 344 345 /*Free ressources:*/ 345 346 xDelete<IssmDouble>(eplHeads); 346 xDelete<IssmDouble>(eplOldHeads);347 // xDelete<IssmDouble>(eplOldHeads); 347 348 xDelete<int>(doflist); 348 349 if(meshtype!=Mesh2DhorizontalEnum){basalelement->DeleteMaterials(); delete basalelement;}; -
issm/trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp
r17030 r17192 15 15 int transfer_flag; 16 16 int penalty_lock; 17 int hydro_maxiter; 17 18 bool isefficientlayer; 18 19 IssmDouble sedimentlimit; … … 33 34 iomodel->FetchData(&rel_tol,HydrologydcRelTolEnum); 34 35 iomodel->FetchData(&penalty_lock,HydrologydcPenaltyLockEnum); 36 iomodel->FetchData(&hydro_maxiter,HydrologydcMaxIterEnum); 35 37 36 38 if(sedimentlimit_flag==1){ … … 51 53 parameters->AddObject(new DoubleParam(HydrologydcRelTolEnum,rel_tol)); 52 54 parameters->AddObject(new IntParam(HydrologydcPenaltyLockEnum,penalty_lock)); 55 parameters->AddObject(new IntParam(HydrologydcMaxIterEnum,hydro_maxiter)); 53 56 54 57 }/*}}}*/ -
issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
r17177 r17192 4751 4751 IssmDouble wh_trans,sed_thick; 4752 4752 IssmDouble epl_specificstoring,sedstoring; 4753 IssmDouble activeEpl[numdof],epl_thickness[numdof] ;4753 IssmDouble activeEpl[numdof],epl_thickness[numdof],old_epl_thickness[numdof]; 4754 4754 IssmDouble epl_head[numdof],sed_head[numdof]; 4755 4755 IssmDouble preceding_transfer[numdof],sed_trans[numdof]; … … 4781 4781 GetInputListOnVertices(&sed_trans[0],HydrologydcSedimentTransmitivityEnum); 4782 4782 GetInputListOnVertices(&epl_head[0],EplHeadEnum); 4783 GetInputListOnVertices(&epl_thickness[0],HydrologydcEplThicknessEnum); 4783 GetInputListOnVertices(&epl_thickness[0],HydrologydcEplThicknessEnum); 4784 4784 4785 4785 this->parameters->FindParam(&leakage,HydrologydcLeakageFactorEnum); … … 4801 4801 if(epl_head[i]>sed_head[i]){ 4802 4802 wh_trans=epl_specificstoring*epl_thickness[i]*sed_trans[i]*(epl_head[i]-sed_head[i])/(leakage*sed_thick); 4803 4803 4804 /*No transfer if the sediment head is allready at the maximum*/ 4804 4805 if(sed_head[i]>=h_max){ … … 4812 4813 4813 4814 /*Relaxation stuff*/ 4814 //wh_trans=preceding_transfer[i]+0.8*(wh_trans-preceding_transfer[i]);4815 wh_trans=preceding_transfer[i]+0.8*(wh_trans-preceding_transfer[i]); 4815 4816 4816 4817 /*Assign output pointer*/ … … 4977 4978 4978 4979 /*Relaxation stuff*/ 4979 //thickness[i] = preceding_thickness[i]+0.8*(thickness[i]-preceding_thickness[i]);4980 thickness[i] = preceding_thickness[i]+0.8*(thickness[i]-preceding_thickness[i]); 4980 4981 } 4981 4982 } -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r17159 r17192 102 102 EplHeadSlopeXEnum, 103 103 EplHeadSlopeYEnum, 104 HydrologydcMaxIterEnum, 104 105 HydrologydcRelTolEnum, 105 106 HydrologydcSpcsedimentHeadEnum, … … 185 186 MaterialsThermalExchangeVelocityEnum, 186 187 MaterialsThermalconductivityEnum, 187 188 MaterialsTemperateiceconductivityEnum, 188 189 MaterialsLithosphereShearModulusEnum, 189 190 MaterialsLithosphereDensityEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r17159 r17192 110 110 case EplHeadSlopeXEnum : return "EplHeadSlopeX"; 111 111 case EplHeadSlopeYEnum : return "EplHeadSlopeY"; 112 case HydrologydcMaxIterEnum : return "HydrologydcMaxIter"; 112 113 case HydrologydcRelTolEnum : return "HydrologydcRelTol"; 113 114 case HydrologydcSpcsedimentHeadEnum : return "HydrologydcSpcsedimentHead"; -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r17159 r17192 110 110 else if (strcmp(name,"EplHeadSlopeX")==0) return EplHeadSlopeXEnum; 111 111 else if (strcmp(name,"EplHeadSlopeY")==0) return EplHeadSlopeYEnum; 112 else if (strcmp(name,"HydrologydcMaxIter")==0) return HydrologydcMaxIterEnum; 112 113 else if (strcmp(name,"HydrologydcRelTol")==0) return HydrologydcRelTolEnum; 113 114 else if (strcmp(name,"HydrologydcSpcsedimentHead")==0) return HydrologydcSpcsedimentHeadEnum; … … 136 137 else if (strcmp(name,"HydrologySediment")==0) return HydrologySedimentEnum; 137 138 else if (strcmp(name,"HydrologyEfficient")==0) return HydrologyEfficientEnum; 138 else if (strcmp(name,"HydrologySedimentKmax")==0) return HydrologySedimentKmaxEnum;139 139 else stage=2; 140 140 } 141 141 if(stage==2){ 142 if (strcmp(name,"WaterTransfer")==0) return WaterTransferEnum; 142 if (strcmp(name,"HydrologySedimentKmax")==0) return HydrologySedimentKmaxEnum; 143 else if (strcmp(name,"WaterTransfer")==0) return WaterTransferEnum; 143 144 else if (strcmp(name,"IndependentObject")==0) return IndependentObjectEnum; 144 145 else if (strcmp(name,"InversionControlParameters")==0) return InversionControlParametersEnum; … … 259 260 else if (strcmp(name,"SteadystateRequestedOutputs")==0) return SteadystateRequestedOutputsEnum; 260 261 else if (strcmp(name,"Surface")==0) return SurfaceEnum; 261 else if (strcmp(name,"ThermalIsenthalpy")==0) return ThermalIsenthalpyEnum;262 262 else stage=3; 263 263 } 264 264 if(stage==3){ 265 if (strcmp(name,"ThermalIsdynamicbasalspc")==0) return ThermalIsdynamicbasalspcEnum; 265 if (strcmp(name,"ThermalIsenthalpy")==0) return ThermalIsenthalpyEnum; 266 else if (strcmp(name,"ThermalIsdynamicbasalspc")==0) return ThermalIsdynamicbasalspcEnum; 266 267 else if (strcmp(name,"ThermalMaxiter")==0) return ThermalMaxiterEnum; 267 268 else if (strcmp(name,"ThermalPenaltyFactor")==0) return ThermalPenaltyFactorEnum; … … 382 383 else if (strcmp(name,"Results")==0) return ResultsEnum; 383 384 else if (strcmp(name,"GenericParam")==0) return GenericParamEnum; 384 else if (strcmp(name,"AdolcParam")==0) return AdolcParamEnum;385 385 else stage=4; 386 386 } 387 387 if(stage==4){ 388 if (strcmp(name,"BoolInput")==0) return BoolInputEnum; 388 if (strcmp(name,"AdolcParam")==0) return AdolcParamEnum; 389 else if (strcmp(name,"BoolInput")==0) return BoolInputEnum; 389 390 else if (strcmp(name,"BoolParam")==0) return BoolParamEnum; 390 391 else if (strcmp(name,"Contour")==0) return ContourEnum; … … 505 506 else if (strcmp(name,"VzMesh")==0) return VzMeshEnum; 506 507 else if (strcmp(name,"Enthalpy")==0) return EnthalpyEnum; 507 else if (strcmp(name,"EnthalpyPicard")==0) return EnthalpyPicardEnum;508 508 else stage=5; 509 509 } 510 510 if(stage==5){ 511 if (strcmp(name,"ThicknessAbsGradient")==0) return ThicknessAbsGradientEnum; 511 if (strcmp(name,"EnthalpyPicard")==0) return EnthalpyPicardEnum; 512 else if (strcmp(name,"ThicknessAbsGradient")==0) return ThicknessAbsGradientEnum; 512 513 else if (strcmp(name,"ThicknessAlongGradient")==0) return ThicknessAlongGradientEnum; 513 514 else if (strcmp(name,"ThicknessAcrossGradient")==0) return ThicknessAcrossGradientEnum; … … 628 629 else if (strcmp(name,"Sset")==0) return SsetEnum; 629 630 else if (strcmp(name,"Verbose")==0) return VerboseEnum; 630 else if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;631 631 else stage=6; 632 632 } 633 633 if(stage==6){ 634 if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum; 634 if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum; 635 else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum; 635 636 else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum; 636 637 else if (strcmp(name,"XY")==0) return XYEnum; -
issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp
r17165 r17192 49 49 femmodel->SetCurrentConfiguration(HydrologyDCInefficientAnalysisEnum); 50 50 femmodel->parameters->FindParam(&isefficientlayer,HydrologydcIsefficientlayerEnum); 51 femmodel->parameters->FindParam(&hydro_maxiter,HydrologydcMaxIterEnum); 51 52 femmodel->parameters->FindParam(&eps_hyd,HydrologydcRelTolEnum); 52 53 femmodel->parameters->FindParam(&time,TimeEnum); 53 54 /*FIXME, hardcoded, put on an enum*/55 hydro_maxiter=100;56 54 57 55 hydrocount=1;
Note:
See TracChangeset
for help on using the changeset viewer.