Changeset 24479
- Timestamp:
- 12/18/19 11:11:43 (5 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/FreeSurfaceBaseAnalysis.cpp
r24335 r24479 107 107 case BasalforcingsPicoEnum: 108 108 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.basin_id",BasalforcingsPicoBasinIdEnum); 109 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.overturning_coeff",BasalforcingsPicoOverturningCoeffEnum); 109 110 break; 110 111 case BasalforcingsIsmip6Enum: -
issm/trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp
r24433 r24479 180 180 case BasalforcingsPicoEnum: 181 181 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.basin_id",BasalforcingsPicoBasinIdEnum); 182 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.overturning_coeff",BasalforcingsPicoOverturningCoeffEnum); 182 183 break; 183 184 case BasalforcingsIsmip6Enum:{ -
issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp
r24459 r24479 799 799 case BasalforcingsPicoEnum: 800 800 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.basin_id",BasalforcingsPicoBasinIdEnum); 801 iomodel->FetchDataToInput(inputs2,elements,"md.basalforcings.overturning_coeff",BasalforcingsPicoOverturningCoeffEnum); 801 802 break; 802 803 case BasalforcingsIsmip6Enum: -
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r24464 r24479 2574 2574 this->parameters->FindParam(&num_basins, BasalforcingsPicoNumBasinsEnum); 2575 2575 this->parameters->FindParam(&gamma_T,BasalforcingsPicoGammaTEnum); 2576 this->parameters->FindParam(&overturning_coeff,BasalforcingsPicoOverturningCoeffEnum);2577 2576 this->parameters->FindParam(&maxbox,BasalforcingsPicoMaxboxcountEnum); 2578 2577 this->GetInputValue(&basinid,BasalforcingsPicoBasinIdEnum); 2579 2578 this->parameters->FindParam(&isplume, BasalforcingsPicoIsplumeEnum); 2580 Input2 * thickness_input=this->GetInput2(ThicknessEnum);_assert_(thickness_input);2579 Input2 *thickness_input = this->GetInput2(ThicknessEnum); _assert_(thickness_input); 2581 2580 _assert_(basinid<=num_basins); 2582 2581 … … 2602 2601 IssmDouble s1 = soc_farocean/(nu*lambda); 2603 2602 IssmDouble* overturnings = xNew<IssmDouble>(NUM_VERTICES); 2603 Input2 *overturningC_input = this->GetInput2(BasalforcingsPicoOverturningCoeffEnum); _assert_(overturningC_input); 2604 2604 2605 2605 /* Start looping on the number of verticies and calculate ocean vars */ … … 2608 2608 gauss->GaussVertex(i); 2609 2609 thickness_input->GetInputValue(&thickness,gauss); 2610 overturningC_input->GetInputValue(&overturning_coeff,gauss); 2610 2611 pressure = (rhoi*earth_grav*1e-4)*thickness; 2611 2612 T_star = a*soc_farocean+b-c*pressure-toc_farocean; -
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp
r24469 r24479 224 224 parameters->AddObject(iomodel->CopyConstantObject("md.basalforcings.num_basins",BasalforcingsPicoNumBasinsEnum)); 225 225 parameters->AddObject(iomodel->CopyConstantObject("md.basalforcings.maxboxcount",BasalforcingsPicoMaxboxcountEnum)); 226 parameters->AddObject(iomodel->CopyConstantObject("md.basalforcings.overturning_coeff",BasalforcingsPicoOverturningCoeffEnum));227 226 parameters->AddObject(iomodel->CopyConstantObject("md.basalforcings.gamma_T",BasalforcingsPicoGammaTEnum)); 228 227 parameters->AddObject(iomodel->CopyConstantObject("md.basalforcings.isplume",BasalforcingsPicoIsplumeEnum)); -
issm/trunk-jpl/src/c/shared/Enum/Enum.vim
r24469 r24479 90 90 syn keyword cConstant BasalforcingsPicoMaxboxcountEnum 91 91 syn keyword cConstant BasalforcingsPicoNumBasinsEnum 92 syn keyword cConstant BasalforcingsPicoOverturningCoeffEnum93 92 syn keyword cConstant BasalforcingsPlumeradiusEnum 94 93 syn keyword cConstant BasalforcingsPlumexEnum … … 470 469 syn keyword cConstant BasalforcingsPicoBasinIdEnum 471 470 syn keyword cConstant BasalforcingsPicoBoxIdEnum 471 syn keyword cConstant BasalforcingsPicoOverturningCoeffEnum 472 472 syn keyword cConstant BasalforcingsPicoSubShelfOceanOverturningEnum 473 473 syn keyword cConstant BasalforcingsPicoSubShelfOceanSalinityEnum … … 1329 1329 syn keyword cType Cfsurfacesquare 1330 1330 syn keyword cType Channel 1331 syn keyword cType classes 1331 1332 syn keyword cType Constraint 1332 1333 syn keyword cType Constraints … … 1335 1336 syn keyword cType ControlInput2 1336 1337 syn keyword cType Covertree 1338 syn keyword cType DatasetInput2 1337 1339 syn keyword cType DataSetParam 1338 syn keyword cType DatasetInput21339 1340 syn keyword cType Definition 1340 1341 syn keyword cType DependentObject … … 1348 1349 syn keyword cType ElementInput2 1349 1350 syn keyword cType ElementMatrix 1351 syn keyword cType Elements 1350 1352 syn keyword cType ElementVector 1351 syn keyword cType Elements1352 1353 syn keyword cType ExponentialVariogram 1353 1354 syn keyword cType ExternalResult … … 1356 1357 syn keyword cType Friction 1357 1358 syn keyword cType Gauss 1359 syn keyword cType GaussianVariogram 1360 syn keyword cType gaussobjects 1358 1361 syn keyword cType GaussPenta 1359 1362 syn keyword cType GaussSeg 1360 1363 syn keyword cType GaussTetra 1361 1364 syn keyword cType GaussTria 1362 syn keyword cType GaussianVariogram1363 1365 syn keyword cType GenericExternalResult 1364 1366 syn keyword cType GenericOption … … 1375 1377 syn keyword cType IssmDirectApplicInterface 1376 1378 syn keyword cType IssmParallelDirectApplicInterface 1379 syn keyword cType krigingobjects 1377 1380 syn keyword cType Load 1378 1381 syn keyword cType Loads … … 1385 1388 syn keyword cType Matice 1386 1389 syn keyword cType Matlitho 1390 syn keyword cType matrixobjects 1387 1391 syn keyword cType MatrixParam 1388 1392 syn keyword cType Misfit … … 1397 1401 syn keyword cType Observations 1398 1402 syn keyword cType Option 1403 syn keyword cType Options 1399 1404 syn keyword cType OptionUtilities 1400 syn keyword cType Options1401 1405 syn keyword cType Param 1402 1406 syn keyword cType Parameters … … 1412 1416 syn keyword cType Regionaloutput 1413 1417 syn keyword cType Results 1418 syn keyword cType Riftfront 1414 1419 syn keyword cType RiftStruct 1415 syn keyword cType Riftfront1416 1420 syn keyword cType Seg 1417 1421 syn keyword cType SegInput2 1422 syn keyword cType Segment 1418 1423 syn keyword cType SegRef 1419 syn keyword cType Segment1420 1424 syn keyword cType SpcDynamic 1421 1425 syn keyword cType SpcStatic … … 1436 1440 syn keyword cType Vertex 1437 1441 syn keyword cType Vertices 1438 syn keyword cType classes1439 syn keyword cType gaussobjects1440 syn keyword cType krigingobjects1441 syn keyword cType matrixobjects1442 1442 syn keyword cType AdjointBalancethickness2Analysis 1443 1443 syn keyword cType AdjointBalancethicknessAnalysis … … 1458 1458 syn keyword cType FreeSurfaceBaseAnalysis 1459 1459 syn keyword cType FreeSurfaceTopAnalysis 1460 syn keyword cType GiaIvinsAnalysis 1460 1461 syn keyword cType GLheightadvectionAnalysis 1461 syn keyword cType GiaIvinsAnalysis1462 1462 syn keyword cType HydrologyDCEfficientAnalysis 1463 1463 syn keyword cType HydrologyDCInefficientAnalysis -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r24469 r24479 84 84 BasalforcingsPicoMaxboxcountEnum, 85 85 BasalforcingsPicoNumBasinsEnum, 86 BasalforcingsPicoOverturningCoeffEnum,87 86 BasalforcingsPlumeradiusEnum, 88 87 BasalforcingsPlumexEnum, … … 466 465 BasalforcingsPicoBasinIdEnum, 467 466 BasalforcingsPicoBoxIdEnum, 467 BasalforcingsPicoOverturningCoeffEnum, 468 468 BasalforcingsPicoSubShelfOceanOverturningEnum, 469 469 BasalforcingsPicoSubShelfOceanSalinityEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r24469 r24479 92 92 case BasalforcingsPicoMaxboxcountEnum : return "BasalforcingsPicoMaxboxcount"; 93 93 case BasalforcingsPicoNumBasinsEnum : return "BasalforcingsPicoNumBasins"; 94 case BasalforcingsPicoOverturningCoeffEnum : return "BasalforcingsPicoOverturningCoeff";95 94 case BasalforcingsPlumeradiusEnum : return "BasalforcingsPlumeradius"; 96 95 case BasalforcingsPlumexEnum : return "BasalforcingsPlumex"; … … 472 471 case BasalforcingsPicoBasinIdEnum : return "BasalforcingsPicoBasinId"; 473 472 case BasalforcingsPicoBoxIdEnum : return "BasalforcingsPicoBoxId"; 473 case BasalforcingsPicoOverturningCoeffEnum : return "BasalforcingsPicoOverturningCoeff"; 474 474 case BasalforcingsPicoSubShelfOceanOverturningEnum : return "BasalforcingsPicoSubShelfOceanOverturning"; 475 475 case BasalforcingsPicoSubShelfOceanSalinityEnum : return "BasalforcingsPicoSubShelfOceanSalinity"; -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r24469 r24479 92 92 else if (strcmp(name,"BasalforcingsPicoMaxboxcount")==0) return BasalforcingsPicoMaxboxcountEnum; 93 93 else if (strcmp(name,"BasalforcingsPicoNumBasins")==0) return BasalforcingsPicoNumBasinsEnum; 94 else if (strcmp(name,"BasalforcingsPicoOverturningCoeff")==0) return BasalforcingsPicoOverturningCoeffEnum;95 94 else if (strcmp(name,"BasalforcingsPlumeradius")==0) return BasalforcingsPlumeradiusEnum; 96 95 else if (strcmp(name,"BasalforcingsPlumex")==0) return BasalforcingsPlumexEnum; … … 137 136 else if (strcmp(name,"EplZigZagCounter")==0) return EplZigZagCounterEnum; 138 137 else if (strcmp(name,"EsaHElastic")==0) return EsaHElasticEnum; 138 else if (strcmp(name,"EsaHemisphere")==0) return EsaHemisphereEnum; 139 139 else stage=2; 140 140 } 141 141 if(stage==2){ 142 if (strcmp(name,"EsaHemisphere")==0) return EsaHemisphereEnum; 143 else if (strcmp(name,"EsaRequestedOutputs")==0) return EsaRequestedOutputsEnum; 142 if (strcmp(name,"EsaRequestedOutputs")==0) return EsaRequestedOutputsEnum; 144 143 else if (strcmp(name,"EsaUElastic")==0) return EsaUElasticEnum; 145 144 else if (strcmp(name,"ExtrapolationVariable")==0) return ExtrapolationVariableEnum; … … 260 259 else if (strcmp(name,"MaterialsLithosphereDensity")==0) return MaterialsLithosphereDensityEnum; 261 260 else if (strcmp(name,"MaterialsLithosphereShearModulus")==0) return MaterialsLithosphereShearModulusEnum; 261 else if (strcmp(name,"MaterialsMantleDensity")==0) return MaterialsMantleDensityEnum; 262 262 else stage=3; 263 263 } 264 264 if(stage==3){ 265 if (strcmp(name,"MaterialsMantleDensity")==0) return MaterialsMantleDensityEnum; 266 else if (strcmp(name,"MaterialsMantleShearModulus")==0) return MaterialsMantleShearModulusEnum; 265 if (strcmp(name,"MaterialsMantleShearModulus")==0) return MaterialsMantleShearModulusEnum; 267 266 else if (strcmp(name,"MaterialsMeltingpoint")==0) return MaterialsMeltingpointEnum; 268 267 else if (strcmp(name,"MaterialsMixedLayerCapacity")==0) return MaterialsMixedLayerCapacityEnum; … … 383 382 else if (strcmp(name,"SmbRunoffgrad")==0) return SmbRunoffgradEnum; 384 383 else if (strcmp(name,"SmbRunoffref")==0) return SmbRunoffrefEnum; 384 else if (strcmp(name,"SmbSealev")==0) return SmbSealevEnum; 385 385 else stage=4; 386 386 } 387 387 if(stage==4){ 388 if (strcmp(name,"SmbSealev")==0) return SmbSealevEnum; 389 else if (strcmp(name,"SmbStepsPerStep")==0) return SmbStepsPerStepEnum; 388 if (strcmp(name,"SmbStepsPerStep")==0) return SmbStepsPerStepEnum; 390 389 else if (strcmp(name,"SmbSwIdx")==0) return SmbSwIdxEnum; 391 390 else if (strcmp(name,"SmbT0dry")==0) return SmbT0dryEnum; … … 481 480 else if (strcmp(name,"BasalforcingsPicoBasinId")==0) return BasalforcingsPicoBasinIdEnum; 482 481 else if (strcmp(name,"BasalforcingsPicoBoxId")==0) return BasalforcingsPicoBoxIdEnum; 482 else if (strcmp(name,"BasalforcingsPicoOverturningCoeff")==0) return BasalforcingsPicoOverturningCoeffEnum; 483 483 else if (strcmp(name,"BasalforcingsPicoSubShelfOceanOverturning")==0) return BasalforcingsPicoSubShelfOceanOverturningEnum; 484 484 else if (strcmp(name,"BasalforcingsPicoSubShelfOceanSalinity")==0) return BasalforcingsPicoSubShelfOceanSalinityEnum; -
issm/trunk-jpl/src/m/classes/basalforcingspico.m
r24010 r24479 9 9 basin_id = NaN; 10 10 maxboxcount = 0; 11 overturning_coeff = 0.;11 overturning_coeff = NaN; 12 12 gamma_T = 0.; 13 13 farocean_temperature = NaN; … … 40 40 end 41 41 if isnan(self.overturning_coeff) 42 self.overturning_coeff = 1e6 ; %m^3/s42 self.overturning_coeff = 1e6*ones(md.mesh.numberofvertices,1); %m^3/s 43 43 disp(' no overturning strength set, setting value to 1e6'); 44 44 end … … 66 66 md = checkfield(md,'fieldname','basalforcings.basin_id','Inf',1,'>=',0,'<=',md.basalforcings.num_basins,'size',[md.mesh.numberofelements 1]); 67 67 md = checkfield(md,'fieldname','basalforcings.maxboxcount','numel',1,'NaN',1,'Inf',1,'>',0); 68 md = checkfield(md,'fieldname','basalforcings.overturning_coeff','numel',1,'NaN',1,'Inf',1,'>',0); 68 if numel(self.overturning_coeff)==1 69 md = checkfield(md,'fieldname','basalforcings.overturning_coeff','numel',1,'NaN',1,'Inf',1,'>',0); 70 else 71 md = checkfield(md,'fieldname','basalforcings.overturning_coeff','size',[md.mesh.numberofvertices 1],'NaN',1,'Inf',1,'>',0); 72 end 69 73 md = checkfield(md,'fieldname','basalforcings.gamma_T','numel',1,'NaN',1,'Inf',1,'>',0); 70 74 md = checkfield(md,'fieldname','basalforcings.farocean_temperature','NaN',1,'Inf',1,'size',[md.basalforcings.num_basins+1 NaN]); … … 96 100 WriteData(fid,prefix,'object',self,'fieldname','num_basins','format','Integer'); 97 101 WriteData(fid,prefix,'object',self,'fieldname','maxboxcount','format','Integer'); 98 WriteData(fid,prefix,'object',self,'fieldname','overturning_coeff','format','Double ');102 WriteData(fid,prefix,'object',self,'fieldname','overturning_coeff','format','DoubleMat','mattype',1); 99 103 WriteData(fid,prefix,'object',self,'fieldname','gamma_T','format','Double'); 100 104 WriteData(fid,prefix,'object',self,'fieldname','farocean_temperature','format','DoubleMat','name','md.basalforcings.farocean_temperature','timeserieslength',md.basalforcings.num_basins+1,'yts',md.constants.yts);
Note:
See TracChangeset
for help on using the changeset viewer.