Changeset 1680
- Timestamp:
- 08/14/09 09:51:16 (16 years ago)
- Location:
- issm/trunk/src/m/solutions/ice
- Files:
-
- 1 deleted
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/m/solutions/ice/CreateFemModel.m
r929 r1680 13 13 14 14 %First, build elements,grids,loads, etc ... for horizontal model 15 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessor(md,solutiontype);15 [elements,grids,loads,constraints,materials]=ModelProcessor(md,solutiontype); 16 16 17 17 %generate degrees of freedom … … 42 42 m.constraints=constraints; 43 43 m.materials=materials; 44 m.part=part;45 m.tpart=tpart;46 44 m.ys=ys; 47 45 m.gridset=gridset; -
issm/trunk/src/m/solutions/ice/Loadresults.m
r914 r1680 15 15 indy=2:6:m_dh.gridset.gsize; 16 16 indp=4:6:m_dh.gridset.gsize; 17 indx=indx(m_dh.tpart);18 indy=indy(m_dh.tpart);19 indp=indp(m_dh.tpart);20 17 else 21 18 m_dhu=fem.m_dhu; … … 23 20 indy=2:6:m_dhu.gridset.gsize; 24 21 indp=4:6:m_dhu.gridset.gsize; 25 indx=indx(m_dhu.tpart);26 indy=indy(m_dhu.tpart);27 indp=indp(m_dhu.tpart);28 22 end 29 23 … … 42 36 indz=3:6:m_dv.gridset.gsize; 43 37 indp=4:6:m_dv.gridset.gsize; 44 indx=indx(m_dv.tpart);45 indy=indy(m_dv.tpart);46 indz=indz(m_dv.tpart);47 indp=indp(m_dv.tpart);48 38 49 39 md.results.diagnostic.step=1; -
issm/trunk/src/m/solutions/ice/ModelProcessor.m
r1623 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessor(md,solutiontype),1 function [elements,grids,loads,constraints,materials]=ModelProcessor(md,solutiontype), 2 2 %MODELPROCESSOR - process model for a given solution sequence 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessor(md,solutiontype)11 % [elements,grids,loads,constraints,materials]=ModelProcessor(md,solutiontype) 12 12 13 13 if strcmpi(solutiontype,'diagnostic_horiz'), 14 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHoriz(md);14 [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHoriz(md); 15 15 elseif strcmpi(solutiontype,'diagnostic_vert'), 16 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticVert(md);16 [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticVert(md); 17 17 elseif strcmpi(solutiontype,'diagnostic_hutter'), 18 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHutter(md);18 [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHutter(md); 19 19 elseif strcmpi(solutiontype,'thermalsteady')| strcmpi(solutiontype,'thermaltransient'), 20 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorThermal(md,solutiontype);20 [elements,grids,loads,constraints,materials]=ModelProcessorThermal(md,solutiontype); 21 21 elseif strcmpi(solutiontype,'meltingsteady')| strcmpi(solutiontype,'meltingtransient'), 22 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorMelting(md,solutiontype);22 [elements,grids,loads,constraints,materials]=ModelProcessorMelting(md,solutiontype); 23 23 elseif strcmpi(solutiontype,'prognostic'), 24 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorPrognostic(md);24 [elements,grids,loads,constraints,materials]=ModelProcessorPrognostic(md); 25 25 elseif strcmpi(solutiontype,'diagnostic_stokes'), 26 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticStokes(md);26 [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticStokes(md); 27 27 elseif strcmpi(solutiontype,'bed_slope_compute') | strcmpi(solutiontype, 'surface_slope_compute'), 28 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorSlopeCompute(md,solutiontype);28 [elements,grids,loads,constraints,materials]=ModelProcessorSlopeCompute(md,solutiontype); 29 29 30 30 else -
issm/trunk/src/m/solutions/ice/ModelProcessorDiagnosticHoriz.m
r1651 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHoriz(md);1 function [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHoriz(md); 2 2 %MODELPROCESSORDIAGNOSTICHORIZ - process model for an horizontal diagnostic solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHoriz(md)11 % [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHoriz(md) 12 12 13 13 %Allocate grids and elements … … 268 268 end 269 269 270 %Last thing, return a partitioning vector, and its transpose.271 [part,tpart]=PartitioningVector(md,grids);272 273 270 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorDiagnosticHutter.m
r1623 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHutter(md);1 function [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHutter(md); 2 2 %MODELPROCESSORDIAGNOSTICHUTTER - process model for a Hutter diagnostic solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHutter(md);11 % [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHutter(md); 12 12 13 13 %Allocate grids and elements … … 146 146 end 147 147 148 149 %Last thing, return a partitioning vector, and its transpose.150 [part,tpart]=PartitioningVector(md,grids);151 148 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorDiagnosticStokes.m
r1663 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHoriz(md);1 function [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHoriz(md); 2 2 %MODELPROCESSORDIAGNOSTICHORIZ - process model for an horizontal diagnostic solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticHoriz(md)11 % [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticHoriz(md) 12 12 13 13 %Allocate grids and elements … … 174 174 end 175 175 176 177 %Last thing, return a partitioning vector, and its transpose.178 [part,tpart]=PartitioningVector(md,grids);179 180 181 176 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorDiagnosticVert.m
r1623 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticVert(md);1 function [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticVert(md); 2 2 %MODELPROCESSORDIAGNOSTICVERT - process model for a vertical diagnostic solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorDiagnosticVert(md);11 % [elements,grids,loads,constraints,materials]=ModelProcessorDiagnosticVert(md); 12 12 13 13 %Allocate grids and elements … … 94 94 constraints=struct('constraint',cell(0,0)); 95 95 96 %Last thing, return a partitioning vector, and its transpose.97 [part,tpart]=PartitioningVector(md,grids);98 99 96 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorMelting.m
r1623 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorMelting(md,solutiontype);1 function [elements,grids,loads,constraints,materials]=ModelProcessorMelting(md,solutiontype); 2 2 %MODELPROCESSORMELTING - process model for a melting solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorMelting(md,solutiontype)11 % [elements,grids,loads,constraints,materials]=ModelProcessorMelting(md,solutiontype) 12 12 13 13 %Allocate grids and elements … … 116 116 constraints=struct('constraint',cell(0,0)); 117 117 118 %Last thing, return a partitioning vector, and its transpose.119 [part,tpart]=PartitioningVector(md,grids);120 121 118 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorPrognostic.m
r1623 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorPrognostic(md);1 function [elements,grids,loads,constraints,materials]=ModelProcessorPrognostic(md); 2 2 %MODELPROCESSORPROGNOSTIC - process model for a prognostic solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorPrognostic(md)11 % [elements,grids,loads,constraints,materials]=ModelProcessorPrognostic(md) 12 12 13 13 %Allocate grids and elements … … 109 109 end 110 110 111 %Last thing, return a partitioning vector, and its transpose.112 [part,tpart]=PartitioningVector(md,grids);113 114 111 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorSlopeCompute.m
r1623 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorSlopeCompute(md,solutiontype);1 function [elements,grids,loads,constraints,materials]=ModelProcessorSlopeCompute(md,solutiontype); 2 2 %MODELPROCESSORSLOPECOMPUTE - process model for a slope finite element computation 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorSlopeCompute(md,solutiontype)11 % [elements,grids,loads,constraints,materials]=ModelProcessorSlopeCompute(md,solutiontype) 12 12 13 13 %Allocate grids and elements … … 105 105 constraints=struct('constraint',cell(0,0)); 106 106 107 %Last thing, return a partitioning vector, and its transpose.108 [part,tpart]=PartitioningVector(md,grids);109 110 107 end %end function -
issm/trunk/src/m/solutions/ice/ModelProcessorThermal.m
r1651 r1680 1 function [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorThermal(md,solutiontype);1 function [elements,grids,loads,constraints,materials]=ModelProcessorThermal(md,solutiontype); 2 2 %MODELPROCESSORTHERMAL - process model for a thermal solution 3 3 % … … 9 9 % 10 10 % Usage: 11 % [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessorThermal(md,solutiontype)11 % [elements,grids,loads,constraints,materials]=ModelProcessorThermal(md,solutiontype) 12 12 13 13 %Allocate grids and elements … … 135 135 end 136 136 137 138 %Last thing, return a partitioning vector, and its transpose.139 [part,tpart]=PartitioningVector(md,grids);140 141 142 137 end %end function -
issm/trunk/src/m/solutions/ice/huttercompute.m
r34 r1680 17 17 %First, build elements,grids,loads, etc ... for horizontal, base vertical and vertical model 18 18 disp(' processing model'); 19 [elements,grids,loads,constraints,materials ,part,tpart]=ModelProcessor(md,'diagnostic_hutter');19 [elements,grids,loads,constraints,materials]=ModelProcessor(md,'diagnostic_hutter'); 20 20 21 21 %generate degrees of freedom -
issm/trunk/src/m/solutions/ice/prognostic.m
r914 r1680 59 59 %project collapsed thickness onto 3d mesh 60 60 if ~isstruct(md.results), md.results=struct(); end 61 indx=1:6:m.gridset.gsize; indx=indx(m.tpart);61 indx=1:6:m.gridset.gsize; 62 62 md.results.prognostic.step=1; 63 63 md.results.prognostic.time=0; -
issm/trunk/src/m/solutions/ice/thermal.m
r1653 r1680 21 21 %initialize velocity,pressure and material properties 22 22 velocity=zeros(m_t.gridset.gsize,1); 23 velocity(1:6:m_t.gridset.gsize)=md.vx (m_t.part)/md.yts;24 velocity(2:6:m_t.gridset.gsize)=md.vy (m_t.part)/md.yts;25 velocity(3:6:m_t.gridset.gsize)=md.vz (m_t.part)/md.yts;23 velocity(1:6:m_t.gridset.gsize)=md.vx/md.yts; 24 velocity(2:6:m_t.gridset.gsize)=md.vy/md.yts; 25 velocity(3:6:m_t.gridset.gsize)=md.vz/md.yts; 26 26 27 27 pressure=zeros(m_t.gridset.gsize,1); … … 44 44 %Wrap up 45 45 indx=1:6:gridset.gsize; 46 indx=indx(m_t.tpart);47 46 if ~isstruct(md.results), md.results=struct(); end 48 47 md.results.thermal.step=1; … … 84 83 %Wrap up 85 84 indx=1:6:m_t.gridset.gsize; 86 indx=indx(m_t.tpart);87 85 solution=struct('time',{},'temperature',{},'melting',{}); 88 86 -
issm/trunk/src/m/solutions/ice/transient2d.m
r914 r1680 80 80 %update surface and bed using the new thickness 81 81 disp(sprintf('%s',' updating geometry...')); 82 indx=1:6:m_p.gridset.gsize; indx=indx(m_p.tpart);82 indx=1:6:m_p.gridset.gsize; 83 83 [new_bed,new_surface,new_thickness]=UpdateGeometry(md,new_thickness(indx),solution(n).bed(indx),solution(n).surface(indx)); 84 84 … … 102 102 103 103 %load results onto model 104 indx=1:6:m_p.gridset.gsize; indx=indx(m_p.tpart);105 indy=2:6:m_p.gridset.gsize; indy=indy(m_p.tpart);104 indx=1:6:m_p.gridset.gsize; 105 indy=2:6:m_p.gridset.gsize; 106 106 for i=1:length(solution), 107 107 solution2(i).vx=solution(i).u_g(indx)*md.yts; -
issm/trunk/src/m/solutions/ice/transient3d.m
r1067 r1680 112 112 113 113 %project collapsed thickness onto 3d mesh 114 indx=1:6:fem.m_p.gridset.gsize; indx=indx(fem.m_p.tpart);114 indx=1:6:fem.m_p.gridset.gsize; 115 115 new_thickness=project3d(md,project2d(md,new_thickness(indx),1),'node'); 116 116 … … 156 156 157 157 %load results onto model 158 indx=1:6:fem.m_dv.gridset.gsize; indx=indx(fem.m_dv.tpart);159 indy=2:6:fem.m_dv.gridset.gsize; indy=indy(fem.m_dv.tpart);160 indz=3:6:fem.m_dv.gridset.gsize; indz=indz(fem.m_dv.tpart);158 indx=1:6:fem.m_dv.gridset.gsize; 159 indy=2:6:fem.m_dv.gridset.gsize; 160 indz=3:6:fem.m_dv.gridset.gsize; 161 161 for i=1:length(solution), 162 162 solution2(i).vx=solution(i).u_g(indx)*md.yts;
Note:
See TracChangeset
for help on using the changeset viewer.