Changeset 15795
- Timestamp:
- 08/12/13 13:44:11 (12 years ago)
- Location:
- issm/trunk-jpl/src/m/boundaryconditions
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/boundaryconditions/SetIceShelfBC.m
r15771 r15795 31 31 md.stressbalance.spcvy=NaN*ones(md.mesh.numberofvertices,1); 32 32 md.stressbalance.spcvz=NaN*ones(md.mesh.numberofvertices,1); 33 md.stressbalance.spcvx(pos)=0;34 md.stressbalance.spcvy(pos)=0;35 md.stressbalance.spcvz(pos)=0;36 33 md.stressbalance.referential=NaN*ones(md.mesh.numberofvertices,6); 37 34 md.stressbalance.loadingforce=0*ones(md.mesh.numberofvertices,3); 35 36 %Ice front position: 37 md.mask.icelevelset(find(nodeonicefront))=0; 38 39 %First find segments that are not completely on the front 40 if(md.mesh.dimension==2), 41 numbernodesfront=2; 42 else 43 numbernodesfront=4; 44 end 45 segmentsfront=md.mask.icelevelset(md.mesh.segments(:,1:numbernodesfront))==0; 46 segments=find(sum(segmentsfront,2)~=numbernodesfront); 47 %Find all nodes for these segments and spc them 48 pos=[md.mesh.segments(segments,1:numbernodesfront)]; 49 md.stressbalance.spcvx(pos(:))=0; 50 md.stressbalance.spcvy(pos(:))=0; 51 md.stressbalance.spcvz(pos(:))=0; 38 52 39 53 %Dirichlet Values … … 45 59 disp(' boundary conditions for stressbalance model: spc set as zero'); 46 60 end 47 48 %Ice front position49 md.mask.icelevelset(find(nodeonicefront))=0;50 61 51 62 %Create zeros basalforcings and surfaceforcings -
issm/trunk-jpl/src/m/boundaryconditions/SetMarineIceSheetBC.m
r15771 r15795 38 38 md.stressbalance.spcvy=NaN*ones(md.mesh.numberofvertices,1); 39 39 md.stressbalance.spcvz=NaN*ones(md.mesh.numberofvertices,1); 40 md.stressbalance.spcvx(pos)=0;41 md.stressbalance.spcvy(pos)=0;42 md.stressbalance.spcvz(pos)=0;43 40 md.stressbalance.referential=NaN*ones(md.mesh.numberofvertices,6); 44 41 md.stressbalance.loadingforce=0*ones(md.mesh.numberofvertices,3); 42 43 44 %Position of ice front 45 md.mask.icelevelset(find(vertexonicefront))=0; 46 47 %First find segments that are not completely on the front 48 if(md.mesh.dimension==2), 49 numbernodesfront=2; 50 else 51 numbernodesfront=4; 52 end 53 segmentsfront=md.mask.icelevelset(md.mesh.segments(:,1:numbernodesfront))==0; 54 segments=find(sum(segmentsfront,2)~=numbernodesfront); 55 %Find all nodes for these segments and spc them 56 pos=[md.mesh.segments(segments,1:numbernodesfront)]; 57 md.stressbalance.spcvx(pos(:))=0; 58 md.stressbalance.spcvy(pos(:))=0; 59 md.stressbalance.spcvz(pos(:))=0; 45 60 46 61 %Dirichlet Values … … 56 71 pos=find(md.mesh.vertexonboundary); 57 72 md.hydrology.spcwatercolumn(pos,1)=1; 58 59 %Position of ice front60 md.mask.icelevelset(find(vertexonicefront))=0;61 73 62 74 %Create zeros basalforcings and surfaceforcings
Note:
See TracChangeset
for help on using the changeset viewer.