source: issm/trunk/src/m/solutions/steadystate.m@ 4322

Last change on this file since 4322 was 4322, checked in by Mathieu Morlighem, 15 years ago

copied change from diagnostic to other solutions

File size: 1.5 KB
RevLine 
[1860]1function md=steadystate(md);
2%STEADYSTATE - compute the velocity and temperature field of a model in steady state.
3%
4% Usage:
5% md=steadystate(md)
6%
7
8 %timing
9 t1=clock;
10
[4302]11 numanalyses=8;
12 analyses=[DiagnosticHorizAnalysisEnum;DiagnosticVertAnalysisEnum;DiagnosticStokesAnalysisEnum;DiagnosticHutterAnalysisEnum;SurfaceSlopeAnalysisEnum;BedSlopeAnalysisEnum;ThermalAnalysisEnum;MeltingAnalysisEnum];
[4294]13 solution_type=SteadyStateSolutionEnum;
[1860]14
[4102]15 displaystring(md.verbose,'%s',['create finite element model']);
[4296]16 femmodel=NewFemModel(md,solution_type,analyses,numanalyses);
[1860]17
[4102]18 %retrieve parameters
19 verbose=femmodel.parameters.Verbose;
20 qmu_analysis=femmodel.parameters.QmuAnalysis;
21 control_analysis=femmodel.parameters.ControlAnalysis;
[1860]22
23 %compute solution
[4102]24 if ~qmu_analysis,
25 if ~control_analysis,
26
27 displaystring(verbose,'%s',['call computational core']);
[4120]28 femmodel=steadystate_core(femmodel);
[1999]29
30 else,
[4102]31
32 displaystring(verbose,'%s',['call computational core']);
[4120]33 femmodel=control_core(femmodel);
[4102]34
[1999]35 end
[4135]36
37 displaystring(verbose,'%s',['write results']);
[4322]38 results=OutputResults(femmodel.elements, femmodel.nodes , femmodel.vertices , femmodel.loads , femmodel.materials, femmodel.parameters, femmodel.results);
39 md.results.(EnumAsString(solution_type))=ProcessPatch(results);
[4135]40
[1860]41 else
[4102]42 %launch dakota driver for diagnostic core solution
43 Qmu(femmodel);
[1860]44 end
45
46 %stop timing
47 t2=clock;
[2330]48 displaystring(md.verbose,'\n%s\n',['solution converged in ' num2str(etime(t2,t1)) ' seconds']);
Note: See TracBrowser for help on using the repository browser.