Changeset 24132
- Timestamp:
- 09/03/19 17:41:22 (6 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified issm/trunk-jpl/src/c/analyses/HydrologyGlaDSAnalysis.cpp ¶
r24080 r24132 29 29 30 30 /*Add channels?*/ 31 int K,L; 31 32 bool ischannels; 33 IssmDouble* channelarea; 32 34 iomodel->FindConstant(&ischannels,"md.hydrology.ischannels"); 35 iomodel->FetchData(&channelarea,&K,&L,"md.initialization.channelarea"); 33 36 if(ischannels){ 34 37 /*Get faces (edges in 2d)*/ … … 42 45 if(!iomodel->my_elements[element]) continue; 43 46 44 /* Add load */ 45 loads->AddObject(new Channel(i+1,i,i,iomodel)); 47 /*Add channelarea from initialization if exists*/ 48 if(K!=0 && K!=iomodel->numberoffaces){ 49 _error_("Unknown dimension for channel area initialization."); 50 } 51 if(K==0){ 52 loads->AddObject(new Channel(i+1,0.,i,iomodel)); 53 } 54 else{ 55 loads->AddObject(new Channel(i+1,channelarea[i],i,iomodel)); 56 } 57 iomodel->DeleteData(1,"md.initialization.channelarea"); 46 58 } 47 59 } -
TabularUnified issm/trunk-jpl/src/c/classes/Loads/Channel.cpp ¶
r24089 r24132 39 39 } 40 40 /*}}}*/ 41 Channel::Channel(int channel_id,int i,int index,IoModel* iomodel){/*{{{*/ 41 Channel::Channel(int channel_id,IssmDouble channelarea,int index,IoModel* iomodel){/*{{{*/ 42 //Channel::Channel(int channel_id,int i,int index,IoModel* iomodel) 42 43 43 44 this->id=channel_id; … … 48 49 49 50 /*Set channel cross section to 0*/ 50 this->S = 0.; 51 this->Sold = 0.; 51 //this->S = 0.; 52 //this->Sold = 0.; 53 this->S = channelarea; 54 this->Sold = channelarea; 52 55 53 56 /*Get edge info*/ -
TabularUnified issm/trunk-jpl/src/c/classes/Loads/Channel.h ¶
r24070 r24132 40 40 /*Channel constructors,destructors {{{*/ 41 41 Channel(); 42 Channel(int numericalflux_id,int i,int index,IoModel* iomodel); 42 Channel(int numericalflux_id,IssmDouble channelarea,int index,IoModel* iomodel); 43 //Channel(int numericalflux_id,int i,int index,IoModel* iomodel); 43 44 ~Channel(); 44 45 /*}}}*/ -
TabularUnified issm/trunk-jpl/src/m/classes/initialization.m ¶
r23944 r24132 19 19 watercolumn = NaN; 20 20 hydraulic_potential = NaN; 21 channelarea = NaN; 21 22 end 22 23 methods … … 94 95 md = checkfield(md,'fieldname','initialization.watercolumn','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); 95 96 md = checkfield(md,'fieldname','initialization.hydraulic_potential','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); 97 md = checkfield(md,'fieldname','initialization.channelarea','NaN',1,'Inf',1,'>=',0,'size',[md.mesh.numberofedges 1]); 96 98 end 97 99 end … … 126 128 fielddisplay(self,'watercolumn','subglacial water sheet thickness (for Shreve and GlaDS) [m]'); 127 129 fielddisplay(self,'hydraulic_potential','Hydraulic potential (for GlaDS) [Pa]'); 130 fielddisplay(self,'channelarea','subglacial water channel area (for GlaDS) [m2]'); 128 131 129 132 end % }}} … … 142 145 WriteData(fid,prefix,'object',self,'fieldname','epl_thickness','format','DoubleMat','mattype',1); 143 146 WriteData(fid,prefix,'object',self,'fieldname','watercolumn','format','DoubleMat','mattype',1); 147 WriteData(fid,prefix,'object',self,'fieldname','channelarea','format','DoubleMat','mattype',1); 144 148 WriteData(fid,prefix,'object',self,'fieldname','hydraulic_potential','format','DoubleMat','mattype',1); 145 149 … … 172 176 writejs1Darray(fid,[modelname '.initialization.watercolumn'],self.watercolumn); 173 177 writejs1Darray(fid,[modelname '.initialization.hydraulic_potential'],self.hydraulic_potential); 178 writejs1Darray(fid,[modelname '.initialization.channel'],self.channelarea); 174 179 175 180 end % }}}
Note:
See TracChangeset
for help on using the changeset viewer.