Changeset 5164
- Timestamp:
- 08/11/10 15:24:03 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/m/classes/public/tres.m
r3923 r5164 1 function md=tres(md, varargin)1 function md=tres(md,string) 2 2 %TRES - transfer results results to corresponding model fields. 3 3 % 4 % Usage: md=tres(md, varargin)4 % Usage: md=tres(md,string) 5 5 % 6 % 7 % Example: md=tres(md,DiagnosticAnalysisEnum); 8 % md=tres(md); 6 % Example: md=tres(md,'diagnostic'); 9 7 10 8 %check number of arguments 11 if nargin==1,12 string=md.analysis_type;13 elseif nargin==2,14 string=varargin{1};15 else16 error('tres error message: bad usage');17 end18 9 19 if strcmpi(string,' DiagnosticAnalysis'),20 md.vx= md.results.DiagnosticAnalysis.vx;21 md.vy= md.results.DiagnosticAnalysis.vy;22 if isfield(md.results.Diagnostic Analysis,'vz'),23 md.vz= md.results.DiagnosticAnalysis.vz;10 if strcmpi(string,'diagnostic'), 11 md.vx=PatchToVec(md.results.DiagnosticSolution.Vx); 12 md.vy=PatchToVec(md.results.DiagnosticSolution.Vy); 13 if isfield(md.results.DiagnosticSolution,'Vz'), 14 md.vz=PatchToVec(md.results.DiagnosticSolution.Vz); 24 15 else 25 16 md.vz=zeros(md.numberofgrids,1); 26 17 end 27 md.vel= md.results.DiagnosticAnalysis.vel;28 if isfield(md.results.Diagnostic Analysis,'pressure'),29 md.pressure= md.results.DiagnosticAnalysis.pressure;18 md.vel=PatchToVec(md.results.DiagnosticSolution.Vel); 19 if isfield(md.results.DiagnosticSolution,'Pressure'), 20 md.pressure=PatchToVec(md.results.DiagnosticSolution.Pressure); 30 21 end 31 22 if md.numrifts, 32 if isfield(md.results.Diagnostic Analysis,'riftproperties'),33 md.riftproperties=md.results.Diagnostic Analysis.riftproperties;23 if isfield(md.results.DiagnosticSolution,'riftproperties'), 24 md.riftproperties=md.results.DiagnosticSolution.riftproperties; 34 25 end 35 26 end 36 27 if md.control_analysis==1, 37 md.(md.results.Diagnostic Analysis.control_type)=md.results.DiagnosticAnalysis.parameter;28 md.(md.results.DiagnosticSolution.control_type)=PatchToVec(md.results.DiagnosticSolution.parameter); 38 29 end 39 30 elseif strcmpi(string,'dakota'), 40 31 md.dakotaresults=md.results.dakota; 41 elseif strcmpi(string,' SteadystateAnalysis'),42 md.vx= md.results.SteadystateAnalysis.vx;43 md.vy= md.results.SteadystateAnalysis.vy;44 if isfield(md.results.SteadystateAnalysis,' vz'),45 md.vz= md.results.SteadystateAnalysis.vz;32 elseif strcmpi(string,'steadystate'), 33 md.vx=PatchToVec(md.results.SteadystateAnalysis.Vx); 34 md.vy=PatchToVec(md.results.SteadystateAnalysis.Vy); 35 if isfield(md.results.SteadystateAnalysis,'Vz'), 36 md.vz=PatchToVec(md.results.SteadystateAnalysis.Vz); 46 37 end 47 38 48 md.vel= md.results.SteadystateAnalysis.vel;49 md.pressure= md.results.SteadystateAnalysis.pressure;50 md.temperature= md.results.SteadystateAnalysis.temperature;51 md.melting= md.results.SteadystateAnalysis.melting;52 elseif strcmpi(string,' ThermalAnalysis'),53 md.temperature= md.results.ThermalAnalysis.temperature;54 md.melting= md.results.ThermalAnalysis.melting;39 md.vel=PatchToVec(md.results.SteadystateAnalysis.Vel); 40 md.pressure=PatchToVec(md.results.SteadystateAnalysis.Pressure); 41 md.temperature=PatchToVec(md.results.SteadystateAnalysis.Temperature); 42 md.melting=PatchToVec(md.results.SteadystateAnalysis.Melting); 43 elseif strcmpi(string,'thermal'), 44 md.temperature=PatchToVec(md.results.ThermalAnalysis.Temperature); 45 md.melting=PatchToVec(md.results.ThermalAnalysis.Melting); 55 46 else 56 47 error(['tres error message: analysis ' string ' not supported yet!']);
Note:
See TracChangeset
for help on using the changeset viewer.