Changeset 7629
- Timestamp:
- 03/04/11 14:54:02 (14 years ago)
- Location:
- issm/trunk/src/m
- Files:
-
- 22 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/m/classes/@modellist/solve.m
r2952 r7629 6 6 % where varargin is a lit of paired arguments. 7 7 % arguments can be: 'analysis_type': 'diagnostic','thermal','prognostic','transient' 8 % arguments can be: 'sub_analysis_type': 'transient','steady','' (default if empty = 'steady')9 8 % 10 9 % Examples: 11 10 % mds=solve(mds,'analysis_type','diagnostic'); 12 % mds=solve(mds,'analysis_type','thermal','sub_analysis_type','transient');13 % mds=solve(mds,'analysis_type','thermal','sub_analysis_type','steady');14 % mds=solve(mds,'analysis_type','thermal');15 11 16 12 %recover options … … 41 37 %recover some fields 42 38 mdex.analysis_type=options.analysis_type; 43 mdex.sub_analysis_type=options.sub_analysis_type;44 39 45 40 mdex.name=[name '-' num2str(i) 'vs' num2str(nummodels)]; -
issm/trunk/src/m/classes/clusters/astrid.m
r6682 r7629 67 67 %retrieve parameters 68 68 modelname=md.name; 69 analysis_type=md.analysis_type;69 solution_type=md.solution_type; 70 70 mem_debug=md.mem_debug; 71 71 … … 76 76 fprintf(fid,'#!/bin/sh\n'); 77 77 if mem_debug==0, 78 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);78 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 79 79 else 80 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);81 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);80 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 81 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 82 82 end 83 83 -
issm/trunk/src/m/classes/clusters/castor.m
r6219 r7629 59 59 %retrieve parameters 60 60 modelname=md.name; 61 analysis_type=md.analysis_type;61 solution_type=md.solution_type; 62 62 mem_debug=md.mem_debug; 63 63 … … 78 78 fprintf(fid,'cd $PBS_O_WORKDIR\n'); 79 79 fprintf(fid,'export OMP_NUM_THREADS=1\n'); 80 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np-1,cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname);80 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np-1,cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname); 81 81 82 82 %close file -
issm/trunk/src/m/classes/clusters/cosmos.m
r6219 r7629 59 59 %retrieve parameters 60 60 modelname=md.name; 61 analysis_type=md.analysis_type;61 solution_type=md.solution_type; 62 62 mem_debug=md.mem_debug; 63 63 … … 77 77 fprintf(fid,'ulimit -s unlimited\n'); 78 78 fprintf(fid,'ulimit -c 0\n'); 79 fprintf(fid,'/opt/mpich/gm/intel10.1/bin/mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname);79 fprintf(fid,'/opt/mpich/gm/intel10.1/bin/mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname); 80 80 81 81 %close file -
issm/trunk/src/m/classes/clusters/ericmac.m
r6219 r7629 61 61 %retrieve parameters 62 62 modelname=md.name; 63 analysis_type=md.analysis_type;63 solution_type=md.solution_type; 64 64 mem_debug=md.mem_debug; 65 65 … … 70 70 fprintf(fid,'#!/bin/sh\n'); 71 71 if mem_debug==0, 72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 73 73 else 74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 76 76 end 77 77 -
issm/trunk/src/m/classes/clusters/gemini.m
r6219 r7629 59 59 %retrieve parameters 60 60 modelname=md.name; 61 analysis_type=md.analysis_type;61 solution_type=md.solution_type; 62 62 mem_debug=md.mem_debug; 63 63 … … 78 78 fprintf(fid,'cd $PBS_O_WORKDIR\n'); 79 79 fprintf(fid,'export OMP_NUM_THREADS=1\n'); 80 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np-1,cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname);80 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np-1,cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname); 81 81 82 82 %close file -
issm/trunk/src/m/classes/clusters/larsen.m
r6220 r7629 61 61 %retrieve parameters 62 62 modelname=md.name; 63 analysis_type=md.analysis_type;63 solution_type=md.solution_type; 64 64 mem_debug=md.mem_debug; 65 65 … … 70 70 fprintf(fid,'#!/bin/sh\n'); 71 71 if mem_debug==0, 72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 73 73 else 74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 76 76 end 77 77 -
issm/trunk/src/m/classes/clusters/murdo.m
r7303 r7629 67 67 %retrieve parameters 68 68 modelname=md.name; 69 analysis_type=md.analysis_type;69 solution_type=md.solution_type; 70 70 mem_debug=md.mem_debug; 71 71 … … 76 76 fprintf(fid,'#!/bin/sh\n'); 77 77 if mem_debug==0, 78 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);78 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 79 79 else 80 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);81 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);80 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 81 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 82 82 end 83 83 -
issm/trunk/src/m/classes/clusters/ogive.m
r6617 r7629 61 61 %retrieve parameters 62 62 modelname=md.name; 63 analysis_type=md.analysis_type;63 solution_type=md.solution_type; 64 64 mem_debug=md.mem_debug; 65 65 … … 70 70 fprintf(fid,'#!/bin/sh\n'); 71 71 if mem_debug==0, 72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 73 73 else 74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 76 76 end 77 77 -
issm/trunk/src/m/classes/clusters/pfe.m
r6672 r7629 109 109 %retrieve parameters 110 110 modelname=md.name; 111 analysis_type=md.analysis_type;111 solution_type=md.solution_type; 112 112 mem_debug=md.mem_debug; 113 113 … … 138 138 fprintf(fid,'cd $PBS_O_WORKDIR\n\n'); 139 139 140 fprintf(fid,'mpiexec -verbose -np %i %s/issm.exe %s $PBS_O_WORKDIR %s.bin %s.petsc %s.outbin %s.lock\n',cluster.np,cluster.codepath,EnumToString( analysis_type),modelname,modelname,modelname,modelname);140 fprintf(fid,'mpiexec -verbose -np %i %s/issm.exe %s $PBS_O_WORKDIR %s.bin %s.petsc %s.outbin %s.lock\n',cluster.np,cluster.codepath,EnumToString(solution_type),modelname,modelname,modelname,modelname); 141 141 142 142 if ~md.io_gather, … … 152 152 if cluster.interactive, 153 153 fid=fopen([modelname '.run'],'w'); 154 fprintf(fid,'mpiexec -verbose -np %i %s/issm.exe %s $PBS_O_WORKDIR %s.bin %s.petsc %s.outbin %s.lock\n',cluster.np,cluster.codepath,EnumToString( analysis_type),modelname,modelname,modelname,modelname);154 fprintf(fid,'mpiexec -verbose -np %i %s/issm.exe %s $PBS_O_WORKDIR %s.bin %s.petsc %s.outbin %s.lock\n',cluster.np,cluster.codepath,EnumToString(solution_type),modelname,modelname,modelname,modelname); 155 155 if ~md.io_gather, 156 156 %concatenate the output files: -
issm/trunk/src/m/classes/clusters/pollux.m
r6219 r7629 59 59 %retrieve parameters 60 60 modelname=md.name; 61 analysis_type=md.analysis_type;61 solution_type=md.solution_type; 62 62 mem_debug=md.mem_debug; 63 63 … … 78 78 fprintf(fid,'cd $PBS_O_WORKDIR\n'); 79 79 fprintf(fid,'export OMP_NUM_THREADS=1\n'); 80 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np-1,cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname);80 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock',cluster.np-1,cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname); 81 81 82 82 %close file -
issm/trunk/src/m/classes/clusters/wilkes.m
r6220 r7629 61 61 %retrieve parameters 62 62 modelname=md.name; 63 analysis_type=md.analysis_type;63 solution_type=md.solution_type; 64 64 mem_debug=md.mem_debug; 65 65 … … 70 70 fprintf(fid,'#!/bin/sh\n'); 71 71 if mem_debug==0, 72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);72 fprintf(fid,'mpirun -np %i %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.np,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 73 73 else 74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString( analysis_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname);74 %fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --gen-suppressions=all --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup,cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 75 fprintf(fid,'LD_PRELOAD=%s mpirun -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s.bin %s.petsc %s.outbin %s.lock 2> %s.errlog >%s.outlog & ',cluster.valgrindlib,cluster.np,cluster.valgrind,cluster.valgrindsup, cluster.codepath,EnumToString(solution_type),cluster.executionpath,modelname,modelname,modelname,modelname,modelname,modelname); 76 76 end 77 77 -
issm/trunk/src/m/classes/model.m
r7462 r7629 283 283 petscoptions_strings={}; 284 284 285 %Analysis and sub_analysis 286 analysis_type=''; 287 sub_analysis_type=''; 285 %Analysis 286 solution_type=''; 288 287 289 288 %management of large models -
issm/trunk/src/m/model/graddetection.m
r5359 r7629 8 8 9 9 %solve first batch of control methods, with given settings. 10 md2=solve(md2,' analysis_type','DiagnosticAnalysis');10 md2=solve(md2,'solution_type','DiagnosticAnalysis'); 11 11 12 12 %record final optimized parameter. … … 24 24 25 25 %rerun control method with optimized parameter, only for 1 more step. 26 md2=solve(md2,' analysis_type','DiagnosticAnalysis');26 md2=solve(md2,'solution_type','DiagnosticAnalysis'); 27 27 28 28 %get optimized parameter after 1 more step. -
issm/trunk/src/m/model/ismodelselfconsistent.m
r7626 r7629 221 221 222 222 %OBSERVED VELOCITIES 223 if md. analysis_type==BalancedthicknessSolutionEnum223 if md.solution_type==BalancedthicknessSolutionEnum 224 224 fields={'thickness_obs'}; 225 225 checksize(md,fields,[md.numberofgrids 1]); … … 279 279 end 280 280 281 if strcmpi(md. analysis_type,'qmu'),281 if strcmpi(md.solution_type,'qmu'), 282 282 if ~strcmpi(md.cluster.name,'none'), 283 283 if md.waitonlock==0, … … 290 290 %Solution specific check 291 291 %TRANSIENT {{{1 292 if (md. analysis_type==Transient2DSolutionEnum | md.analysis_type==Transient3DSolutionEnum),292 if (md.solution_type==Transient2DSolutionEnum | md.solution_type==Transient3DSolutionEnum), 293 293 294 294 if md.dt<=0, … … 302 302 %}}} 303 303 %STEADYSTATE{{{1 304 if md. analysis_type==SteadystateSolutionEnum,304 if md.solution_type==SteadystateSolutionEnum, 305 305 306 306 %NDT … … 316 316 %}}} 317 317 %GROUNDINGLINEMIGRATION2D{{{1 318 if md. analysis_type==GroundingLineMigration2DSolutionEnum,318 if md.solution_type==GroundingLineMigration2DSolutionEnum, 319 319 if strcmpi(md.cluster.name,'none'), 320 error(['model not consistent: ' md. analysis_type ' is only implemented in parallel mode !'])320 error(['model not consistent: ' md.solution_type ' is only implemented in parallel mode !']) 321 321 end 322 322 … … 327 327 %recursive call to ismodelselfconsistent 328 328 if (md.dim~=2), 329 error(['model not consistent: for a ' md. analysis_type ' computation, the grounding line module is only implemented in 2d !'])329 error(['model not consistent: for a ' md.solution_type ' computation, the grounding line module is only implemented in 2d !']) 330 330 end 331 331 … … 336 336 %}}} 337 337 %ANALYSESCHECKS {{{1 338 [analyses,numanalyses,solutioncore]=SolutionConfiguration(md. analysis_type);338 [analyses,numanalyses,solutioncore]=SolutionConfiguration(md.solution_type); 339 339 for i=1:numanalyses, 340 340 checkforanalysis(md,analyses(i)); … … 409 409 %EXTRUSION 410 410 if (md.dim==2), 411 error(['model not consistent: for a ' md. analysis_type ' computation, the model must be 3d, extrude it first!'])411 error(['model not consistent: for a ' md.solution_type ' computation, the model must be 3d, extrude it first!']) 412 412 end 413 413 -
issm/trunk/src/m/model/isresultconsistent.m
r4202 r7629 1 function bool=isresultconsistent(md, analysis_type)1 function bool=isresultconsistent(md,solution_type) 2 2 %ISRESULTCONSISTENT: check that results are consistent 3 3 % … … 6 6 % 7 7 % Usage: 8 % bool=IsModelSelfConsistent(model, analysis_type)8 % bool=IsModelSelfConsistent(model,solution_type) 9 9 10 10 %tolerance we use in litmus tests for the consistency of the model … … 26 26 27 27 %DIAGNOSTIC 28 if analysis_type==DiagnosticSolutionEnum() & md.control_analysis==0,28 if solution_type==DiagnosticSolutionEnum() & md.control_analysis==0, 29 29 30 30 if (md.dim==3) … … 59 59 60 60 %CONTROL 61 if analysis_type==DiagnosticSolutionEnum() & md.control_analysis==1,61 if solution_type==DiagnosticSolutionEnum() & md.control_analysis==1, 62 62 63 63 if ~md.cm_gradient, … … 118 118 119 119 %THERMAL 120 if analysis_type==ThermalSolutionEnum(),120 if solution_type==ThermalSolutionEnum(), 121 121 122 122 for iter=1:length(md.results.ThermalAnalysis) … … 154 154 end 155 155 156 if ( analysis_type==Transient2DSolutionEnum() | analysis_type==Transient3DSolutionEnum()),156 if (solution_type==Transient2DSolutionEnum() | solution_type==Transient3DSolutionEnum()), 157 157 158 158 for iter=1:length(md.results.TransientAnalysis) -
issm/trunk/src/m/model/loadmultipleresultsfromcluster.m
r3119 r7629 26 26 for i=1:nummodels, 27 27 %load results for this model 28 %md_list{i}.analysis_type=DiagnosticAnalysisEnum();29 %md_list{i}.sub_analysis_type=NoneAnalysisEnum();30 %md_list{i}=loadresultsfromdisk(md_list{i},[md_list{i}.name '_' num2str(i) 'vs' num2str(nummodels) '.outbin']);31 28 md_list{i}=loadresultsfromdisk(md_list{i},[md_list{i}.name '.outbin']); 32 29 -
issm/trunk/src/m/model/loadresultsfromdisk.m
r6736 r7629 22 22 md.results.(structure.SolutionType)=structure; 23 23 24 %recover analysis_type from results 25 md.analysis_type=structure(1).SolutionType; 26 if isscalar(md.sub_analysis_type), 27 md.sub_analysis_type=EnumToString(md.sub_analysis_type); 28 end 24 %recover solution_type from results 25 md.solution_type=structure(1).SolutionType; 29 26 30 27 %Check result is consistent, only if it exists … … 38 35 else 39 36 40 if isscalar(md.analysis_type), 41 md.analysis_type =EnumToString(md.analysis_type); 42 end 43 if isscalar(md.sub_analysis_type), 44 md.sub_analysis_type=EnumToString(md.sub_analysis_type); 37 if isscalar(md.solution_type), 38 md.solution_type =EnumToString(md.solution_type); 45 39 end 46 40 md=postqmu(md); -
issm/trunk/src/m/model/marshall.m
r7445 r7629 22 22 end 23 23 24 WriteData(fid,md.analysis_type','Integer','analysis_type');25 WriteData(fid,md.sub_analysis_type','Integer','sub_analysis_type');26 24 WriteData(fid,md.dim,'Integer','dim'); 27 25 WriteData(fid,md.numberofgrids,'Integer','numberofgrids'); -
issm/trunk/src/m/model/process_solve_options.m
r7318 r7629 7 7 % See also: SOLVE 8 8 9 %analysis_type: check on this option, error out otherwise 10 analysis_type=getfieldvalue(options,'analysis_type'); 11 12 %sub_analysis_type: check on it, not mandatory 13 sub_analysis_type=getfieldvalue(options,'sub_analysis_type',NoneAnalysisEnum); 9 %solution_type: check on this option, error out otherwise 10 solution_type=getfieldvalue(options,'analysis_type'); 14 11 15 12 %batch mode for launching jobs. … … 20 17 21 18 %convert to Enum if a string was provided 22 if ischar(analysis_type), error(['only Enums are supported as ''analysis_type''. For example: md=solve(md,''analysis_type'',DiagnosticSolutionEnum); ']); end 23 if ischar(sub_analysis_type), error(['only Enums are supported as ''sub_analysis_type''. For example: md=solve(md,''analysis_type'',DiagnosticSolutionEnum); ']); end 19 if ischar(solution_type), error(['only Enums are supported as ''solution_type''. For example: md=solve(md,''solution_type'',DiagnosticSolutionEnum); ']); end 24 20 25 21 %check solution type is supported 26 if ~ismember( analysis_type,[DiagnosticSolutionEnum,PrognosticSolutionEnum,ThermalSolutionEnum,...22 if ~ismember(solution_type,[DiagnosticSolutionEnum,PrognosticSolutionEnum,ThermalSolutionEnum,... 27 23 SteadystateSolutionEnum,ParametersSolutionEnum,Transient2DSolutionEnum,Transient3DSolutionEnum... 28 24 BalancedthicknessSolutionEnum,BalancedvelocitiesSolutionEnum,BedSlopeSolutionEnum,SurfaceSlopeSolutionEnum,GroundingLineMigration2DSolutionEnum]), 29 error(['process_solve_options error message: analysis_type ' EnumToString(analysis_type) ' not supported yet!']);25 error(['process_solve_options error message: solution_type ' EnumToString(solution_type) ' not supported yet!']); 30 26 end 31 if ~ismember(sub_analysis_type,[SteadyAnalysisEnum,NoneAnalysisEnum,GradientAnalysisEnum,InverseAnalysisEnum,TransientAnalysisEnum]), 32 error(['process_solve_options error message: sub_analysis_type ' sub_analysis_type ' not supported yet!']); 33 end 34 outoptions.analysis_type=analysis_type; 35 outoptions.sub_analysis_type=sub_analysis_type; 27 outoptions.solution_type=solution_type; 36 28 outoptions.upload=getfieldvalue(options,'upload','off'); 37 29 -
issm/trunk/src/m/model/solve.m
r6860 r7629 6 6 % where varargin is a lit of paired arguments of string OR enums 7 7 % arguments can be: 'analysis_type': 'DiagnosticAnalysis','ThermalAnalysis','PrognosticAnalysis','Transient2DAnalysis' 8 % arguments can be: 'sub_analysis_type': 'Transient2DAnalysis','SteadyAnalysis','NoneAnalysisEnum'9 8 % 10 9 % Examples: 11 10 % md=solve(md,'analysis_type',DiagnosticSolutionEnum); 12 % md=solve(md,'analysis_type','ThermalAnalysis','sub_analysis_type','Transient2DAnalysis');13 % md=solve(md,'analysis_type',ThermalSolutionEnum,'sub_analysis_type',SteadyAnalysisEnum);14 % md=solve(md,'analysis_type','ThermalAnalysis');15 11 16 12 %recover options … … 21 17 22 18 %recover some fields 23 md.analysis_type=options.analysis_type; 24 md.sub_analysis_type=options.sub_analysis_type; 19 md.solution_type=options.solution_type; 25 20 26 21 %check model consistency … … 48 43 49 44 %Launch correct solution sequence 50 md=issm(md,md. analysis_type);45 md=issm(md,md.solution_type); 51 46 52 47 %post processes qmu results if necessary … … 61 56 %Check result is consistent 62 57 disp('checking result consistency'); 63 %if ~isresultconsistent(md,options. analysis_type),58 %if ~isresultconsistent(md,options.solution_type), 64 59 % disp('!! results not consistent correct the model !!') %it would be very cruel to put an error, it would kill the computed results (even if not consistent...) 65 60 %end 66 61 67 62 %convert analysis type to string finally 68 md.analysis_type=EnumToString(options.analysis_type); 69 md.sub_analysis_type=EnumToString(options.sub_analysis_type); 63 md.solution_type=EnumToString(options.solution_type); -
issm/trunk/src/m/qmu/process_qmu_options.m
r6568 r7629 37 37 end 38 38 39 %sub_analysis_type: check on it, not mandatory40 found=0;41 for i=1:size(options,1),42 if strcmpi(options{i,1},'sub_analysis_type'),43 sub_analysis_type=options{i,2};44 found=1;45 end46 end47 if ~found48 if ~strcmpi(analysis_type,'thermal'),49 sub_analysis_type='none';50 else51 disp('recover_qmu_options info message: no ''sub_analysis_type'' was provided, defaulting to ''steady''');52 sub_analysis_type='steady';53 end54 end55 56 39 %check solution type is supported 57 40 if ~(strcmpi(analysis_type,'control') | ... … … 65 48 error(['process_qmu_options error message: analysis_type ' analysis_type ' not supported yet!']); 66 49 end 67 if ~(strcmpi(sub_analysis_type,'none') | ...68 strcmpi(sub_analysis_type,'steady') | ...69 strcmpi(sub_analysis_type,'horiz') | ...70 strcmpi(sub_analysis_type,'vert') | ...71 strcmpi(sub_analysis_type,'') | ...72 strcmpi(sub_analysis_type,'transient') ),73 error(['process_qmu_options error message: sub_analysis_type ' sub_analysis_type ' not supported yet!']);74 end75 76 77 50 78 51 % process qmu arguments … … 121 94 outoptions.analysis_type=analysis_type; 122 95 outoptions.package=package; 123 outoptions.sub_analysis_type=sub_analysis_type;124 96 outoptions.qmudir=qmudir; 125 97 outoptions.qmufile=qmufile;
Note:
See TracChangeset
for help on using the changeset viewer.