- Timestamp:
- 08/29/15 11:55:39 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp
r19479 r19527 77 77 parameters->AddObject(iomodel->CopyConstantObject(TransientIsstressbalanceEnum)); 78 78 parameters->AddObject(iomodel->CopyConstantObject(TransientIsmasstransportEnum)); 79 parameters->AddObject(iomodel->CopyConstantObject(TransientIssmbEnum)); 79 80 parameters->AddObject(iomodel->CopyConstantObject(TransientIsthermalEnum)); 80 81 parameters->AddObject(iomodel->CopyConstantObject(TransientIsgroundinglineEnum)); … … 99 100 100 101 /*Surface mass balance parameters*/ 101 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsEnum));102 iomodel->Constant(&smb_model,S urfaceforcingsEnum);102 parameters->AddObject(iomodel->CopyConstantObject(SmbEnum)); 103 iomodel->Constant(&smb_model,SmbEnum); 103 104 iomodel->Constant(&interp,TimesteppingInterpForcingsEnum); 104 105 switch(smb_model){ 105 case SMB Enum:106 case SMBforcingEnum: 106 107 /*Nothing to add to parameters*/ 107 108 break; 108 109 case SMBpddEnum: 109 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsIsdelta18oEnum));110 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsIsmungsmEnum));111 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsDesfacEnum));112 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsRlapsEnum));113 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsRlapslgmEnum));114 iomodel->Constant(&isdelta18o,S urfaceforcingsIsdelta18oEnum);115 iomodel->Constant(&ismungsm,S urfaceforcingsIsmungsmEnum);110 parameters->AddObject(iomodel->CopyConstantObject(SmbIsdelta18oEnum)); 111 parameters->AddObject(iomodel->CopyConstantObject(SmbIsmungsmEnum)); 112 parameters->AddObject(iomodel->CopyConstantObject(SmbDesfacEnum)); 113 parameters->AddObject(iomodel->CopyConstantObject(SmbRlapsEnum)); 114 parameters->AddObject(iomodel->CopyConstantObject(SmbRlapslgmEnum)); 115 iomodel->Constant(&isdelta18o,SmbIsdelta18oEnum); 116 iomodel->Constant(&ismungsm,SmbIsmungsmEnum); 116 117 117 118 if(ismungsm){ 118 iomodel->FetchData(&temp,&N,&M,S urfaceforcingsPfacEnum); _assert_(N==2);119 parameters->AddObject(new TransientParam(S urfaceforcingsPfacEnum,&temp[0],&temp[M],interp,M));120 iomodel->DeleteData(temp,S urfaceforcingsPfacEnum);119 iomodel->FetchData(&temp,&N,&M,SmbPfacEnum); _assert_(N==2); 120 parameters->AddObject(new TransientParam(SmbPfacEnum,&temp[0],&temp[M],interp,M)); 121 iomodel->DeleteData(temp,SmbPfacEnum); 121 122 122 iomodel->FetchData(&temp,&N,&M,S urfaceforcingsTdiffEnum); _assert_(N==2);123 parameters->AddObject(new TransientParam(S urfaceforcingsTdiffEnum,&temp[0],&temp[M],interp,M));124 iomodel->DeleteData(temp,S urfaceforcingsTdiffEnum);125 126 iomodel->FetchData(&temp,&N,&M,S urfaceforcingsSealevEnum); _assert_(N==2);127 parameters->AddObject(new TransientParam(S urfaceforcingsSealevEnum,&temp[0],&temp[M],interp,M));128 iomodel->DeleteData(temp,S urfaceforcingsSealevEnum);123 iomodel->FetchData(&temp,&N,&M,SmbTdiffEnum); _assert_(N==2); 124 parameters->AddObject(new TransientParam(SmbTdiffEnum,&temp[0],&temp[M],interp,M)); 125 iomodel->DeleteData(temp,SmbTdiffEnum); 126 127 iomodel->FetchData(&temp,&N,&M,SmbSealevEnum); _assert_(N==2); 128 parameters->AddObject(new TransientParam(SmbSealevEnum,&temp[0],&temp[M],interp,M)); 129 iomodel->DeleteData(temp,SmbSealevEnum); 129 130 } 130 131 if(isdelta18o){ 131 iomodel->FetchData(&temp,&N,&M,S urfaceforcingsDelta18oEnum); _assert_(N==2);132 parameters->AddObject(new TransientParam(S urfaceforcingsDelta18oEnum,&temp[0],&temp[M],interp,M));133 iomodel->DeleteData(temp,S urfaceforcingsDelta18oEnum);134 135 iomodel->FetchData(&temp,&N,&M,S urfaceforcingsDelta18oSurfaceEnum); _assert_(N==2);136 parameters->AddObject(new TransientParam(S urfaceforcingsDelta18oSurfaceEnum,&temp[0],&temp[M],interp,M));137 iomodel->DeleteData(temp,S urfaceforcingsDelta18oSurfaceEnum);132 iomodel->FetchData(&temp,&N,&M,SmbDelta18oEnum); _assert_(N==2); 133 parameters->AddObject(new TransientParam(SmbDelta18oEnum,&temp[0],&temp[M],interp,M)); 134 iomodel->DeleteData(temp,SmbDelta18oEnum); 135 136 iomodel->FetchData(&temp,&N,&M,SmbDelta18oSurfaceEnum); _assert_(N==2); 137 parameters->AddObject(new TransientParam(SmbDelta18oSurfaceEnum,&temp[0],&temp[M],interp,M)); 138 iomodel->DeleteData(temp,SmbDelta18oSurfaceEnum); 138 139 } 139 140 break; 140 141 case SMBd18opddEnum: 141 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsIsmungsmEnum));142 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsIsd18opdEnum));143 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsDesfacEnum));144 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsRlapsEnum));145 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsRlapslgmEnum));146 iomodel->Constant(&ismungsm,S urfaceforcingsIsmungsmEnum);147 iomodel->Constant(&isd18opd,S urfaceforcingsIsd18opdEnum);142 parameters->AddObject(iomodel->CopyConstantObject(SmbIsmungsmEnum)); 143 parameters->AddObject(iomodel->CopyConstantObject(SmbIsd18opdEnum)); 144 parameters->AddObject(iomodel->CopyConstantObject(SmbDesfacEnum)); 145 parameters->AddObject(iomodel->CopyConstantObject(SmbRlapsEnum)); 146 parameters->AddObject(iomodel->CopyConstantObject(SmbRlapslgmEnum)); 147 iomodel->Constant(&ismungsm,SmbIsmungsmEnum); 148 iomodel->Constant(&isd18opd,SmbIsd18opdEnum); 148 149 if(isd18opd){ 149 iomodel->FetchData(&temp,&N,&M,S urfaceforcingsDelta18oEnum); _assert_(N==2);150 parameters->AddObject(new TransientParam(S urfaceforcingsDelta18oEnum,&temp[0],&temp[M],interp,M));151 iomodel->DeleteData(temp,S urfaceforcingsDelta18oEnum);150 iomodel->FetchData(&temp,&N,&M,SmbDelta18oEnum); _assert_(N==2); 151 parameters->AddObject(new TransientParam(SmbDelta18oEnum,&temp[0],&temp[M],interp,M)); 152 iomodel->DeleteData(temp,SmbDelta18oEnum); 152 153 153 parameters->AddObject(iomodel->CopyConstantObject(S urfaceforcingsDpermilEnum));154 parameters->AddObject(iomodel->CopyConstantObject(SmbDpermilEnum)); 154 155 } 155 156 break;
Note:
See TracChangeset
for help on using the changeset viewer.