Changeset 21576


Ignore:
Timestamp:
02/28/17 16:12:12 (8 years ago)
Author:
seroussi
Message:

NEW: adding issm_ocean in solve

Location:
issm/trunk-jpl/src/m
Files:
25 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/clusters/acenet.m

    r21050 r21576  
    5656                 end
    5757                 %}}}
    58                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     58                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    5959
    6060                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/camhpc.m

    r21305 r21576  
    7171                 end
    7272                 %}}}
    73                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     73                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    7474
    7575                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/castor.m

    r21050 r21576  
    4646                 end
    4747                 %}}}
    48                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     48                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    4949
    5050                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/cloud.m

    r21050 r21576  
    4848                end
    4949                %}}}
    50                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     50                function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    5151
    5252                        %write queuing script
  • issm/trunk-jpl/src/m/classes/clusters/cosmos.m

    r21050 r21576  
    4646                 end
    4747                 %}}}
    48                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     48                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    4949
    5050                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/cyclone.py

    r21050 r21576  
    7272                return self
    7373                # }}}
    74         def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota):
     74        def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling):
    7575                # {{{
    7676
  • issm/trunk-jpl/src/m/classes/clusters/discover.m

    r21050 r21576  
    9090                 end
    9191                 %}}}
    92                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     92                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,ioceancoupling) % {{{
    9393
    9494                         if(isgprof),    disp('gprof not supported by cluster, ignoring...'); end
     
    100100                                         executable='issm_dakota.exe';
    101101                                 end
     102                         end
     103                         if isoceancoupling,
     104                                 executable='issm_ocean.exe';
    102105                         end
    103106
  • issm/trunk-jpl/src/m/classes/clusters/gemini.m

    r21050 r21576  
    4646                 end
    4747                 %}}}
    48                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     48                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    4949
    5050                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/generic.m

    r21050 r21576  
    7272                end
    7373                %}}}
    74                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     74                function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    7575
    7676                        %write queuing script
     
    8282                                        executable='issm_dakota.exe';
    8383                                end
     84                        end
     85                        if isoceancoupling,
     86                                executable='issm_ocean.exe';
    8487                        end
    8588
  • issm/trunk-jpl/src/m/classes/clusters/generic.py

    r21410 r21576  
    6868                return md
    6969        # }}}
    70         def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota):    # {{{
     70        def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling):    # {{{
    7171
    7272                executable='issm.exe';
     
    7676                        if version>=6:
    7777                                executable='issm_dakota.exe'
     78                if isoceancoupling:
     79                        executable='issm_ocean.exe'
    7880
    7981                #write queuing script
  • issm/trunk-jpl/src/m/classes/clusters/generic_static.m

    r21050 r21576  
    4949                end
    5050                %}}}
    51                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     51                function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    5252
    5353                        %Check that issm.exe exists in the right path
     
    6767                                        executable='issm_dakota.exe';
    6868                                end
     69                        end
     70                        if isoceancoupling,
     71                                executable='issm_ocean.exe';
    6972                        end
    7073
  • issm/trunk-jpl/src/m/classes/clusters/greenplanet.m

    r21050 r21576  
    6969                 end
    7070                 %}}}
    71                  function BuildKrigingQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     71                 function BuildKrigingQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    7272
    7373                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/hexagon.py

    r21425 r21576  
    8181                return self
    8282                # }}}
    83         def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota):
     83        def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling):
    8484                # {{{
    8585
     
    9090                        if version>=6:
    9191                                executable='issm_dakota.exe'
     92                if isoceancoupling:
     93                        executable='issm_ocean.exe'
    9294
    9395                #write queuing script
  • issm/trunk-jpl/src/m/classes/clusters/hpc.m

    r21050 r21576  
    9090                 end
    9191                 %}}}
    92                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     92                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    9393
    9494                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/lonestar.m

    r21050 r21576  
    9696                 end
    9797                 %}}}
    98                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     98                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    9999
    100100                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
     
    107107                                         executable='issm_dakota.exe';
    108108                                 end
     109                         end
     110                         if isoceancoupling,
     111                                 executable='issm_ocean.exe';
    109112                         end
    110113
  • issm/trunk-jpl/src/m/classes/clusters/pfe.m

    r21050 r21576  
    136136                 end
    137137                 %}}}
    138                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     138                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    139139
    140140                         if(isgprof),    disp('gprof not supported by cluster, ignoring...'); end
     
    146146                                         executable='issm_dakota.exe';
    147147                                 end
     148                         end
     149                         if isoceancoupling,
     150                                 executable='issm_ocean.exe';
    148151                         end
    149152
  • issm/trunk-jpl/src/m/classes/clusters/pfe.py

    r21050 r21576  
    133133                return self
    134134        # }}}
    135         def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota):
     135        def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling):
    136136                # {{{
    137137
     
    142142                        if version>=6:
    143143                                executable='issm_dakota.exe'
     144                if isoceancoupling:
     145                        executable='issm_ocean.exe'
    144146
    145147                #write queuing script
  • issm/trunk-jpl/src/m/classes/clusters/pollux.m

    r21050 r21576  
    4646                 end
    4747                 %}}}
    48                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     48                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    4949
    5050                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/raijin.m

    r21050 r21576  
    6363                 end
    6464                 %}}}
    65                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota) % {{{
     65                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    6666                     
    6767                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
  • issm/trunk-jpl/src/m/classes/clusters/vilje.m

    r21050 r21576  
    9999                 end
    100100                 %}}}
    101                  function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof) % {{{
     101                 function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
    102102
    103103                         if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
     
    110110                                         executable='issm_dakota.exe';
    111111                                 end
     112                         end
     113                         if isoceancoupling,
     114                                 executable='issm_ocean.exe';
    112115                         end
    113116
  • issm/trunk-jpl/src/m/classes/clusters/vilje.py

    r21568 r21576  
    8181                return self
    8282                # }}}
    83         def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota):
     83        def BuildQueueScript(self,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling):
    8484                # {{{
    8585
     
    9090                        if version>=6:
    9191                                executable='issm_dakota.exe'
     92                if isoceancoupling:
     93                        executable='issm_ocean.exe'
    9294
    9395                #write queuing script
  • issm/trunk-jpl/src/m/classes/transient.m

    r21530 r21576  
    1818                isslr             = 0;
    1919                iscoupler         = 0;
     20                isoceancoupling   = 0;
    2021                requested_outputs = {};
    2122        end
     
    4344                        self.ishydrology     = 0;
    4445                        self.isslr           = 0;
     46                        self.isoceancoupling = 0;
    4547                        self.iscoupler       = 0;
    4648
     
    6264                        self.ishydrology     = 0;
    6365                        self.isslr           = 0;
     66                        self.isoceancoupling = 0;
    6467                        self.iscoupler       = 0;
    6568
     
    9194                        md = checkfield(md,'fieldname','transient.requested_outputs','stringrow',1);
    9295                        md = checkfield(md,'fieldname','transient.isslr','numel',[1],'values',[0 1]);
     96                        md = checkfield(md,'fieldname','transient.isoceancoupling','numel',[1],'values',[0 1]);
    9397                        md = checkfield(md,'fieldname','transient.iscoupler','numel',[1],'values',[0 1]);
    9498
     99                        if (~strcmp(solution,'TransientSolution') & md.transient.iscoupling==1),
     100                                md = checkmessage(md,['Coupling with ocean model can only be performed for transient simulations!']);
     101                        end
    95102                end % }}}
    96103                function disp(self) % {{{
     
    108115                        fielddisplay(self,'ishydrology','indicates whether an hydrology model is used');
    109116                        fielddisplay(self,'isslr','indicates whether a sea-level rise solution is used in the transient');
     117                        fielddisplay(self,'isoceancoupling','indicates whether a coupling with an ocean model is used in the transient');
    110118                        fielddisplay(self,'iscoupler','indicates whether different models are being run with need for coupling');
    111119                        fielddisplay(self,'requested_outputs','list of additional outputs requested');
     
    124132                        WriteData(fid,prefix,'object',self,'fieldname','ismovingfront','format','Boolean');
    125133                        WriteData(fid,prefix,'object',self,'fieldname','isslr','format','Boolean');
     134                        WriteData(fid,prefix,'object',self,'fieldname','isoceancoupling','format','Boolean');
    126135                        WriteData(fid,prefix,'object',self,'fieldname','iscoupler','format','Boolean');
    127136
     
    148157                        writejsdouble(fid,[modelname '.trans.ishydrology'],self.ishydrology);
    149158                        writejsdouble(fid,[modelname '.trans.isslr'],self.isslr);
     159                        writejsdouble(fid,[modelname '.trans.isoceancoupling'],self.isoceancoupling);
    150160                        writejsdouble(fid,[modelname '.trans.iscoupler'],self.iscoupler);
    151161                        writejscellstring(fid,[modelname '.trans.requested_outputs'],self.requested_outputs);
  • issm/trunk-jpl/src/m/classes/transient.py

    r21530 r21576  
    2323                self.ishydrology       = False
    2424                self.isslr             = False
     25                self.isoceancoupling   = False
    2526                self.iscoupler         = False
    2627                self.requested_outputs = []
     
    4344                string="%s\n%s"%(string,fielddisplay(self,'ishydrology','indicates whether an hydrology model is used'))
    4445                string="%s\n%s"%(string,fielddisplay(self,'isslr','indicates if a sea level rise solution is used in the transient'))
     46                string="%s\n%s"%(string,fielddisplay(self,'isoceancoupling','indicates whether coupling with an ocean model is used in the transient'))
    4547                string="%s\n%s"%(string,fielddisplay(self,'iscoupler','indicates whether different models are being run with need for coupling'))
    4648                string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','list of additional outputs requested'))
     
    6870                self.ismovingfront     = False
    6971                self.ishydrology       = False
     72                self.isoceancoupling   = False
    7073                self.isslr             = False
    7174                self.iscoupler         = False
     
    8992                self.ishydrology     = False
    9093                self.isslr           = False
     94                self.isoceancoupling = False
    9195                self.iscoupler       = False
    9296
     
    112116                md = checkfield(md,'fieldname','transient.ismovingfront','numel',[1],'values',[0,1]);
    113117                md = checkfield(md,'fieldname','transient.isslr','numel',[1],'values',[0,1])
     118                md = checkfield(md,'fieldname','transient.isoceancoupling','numel',[1],'values',[0,1])
    114119                md = checkfield(md,'fieldname','transient.iscoupler','numel',[1],'values',[0,1])
    115120                md = checkfield(md,'fieldname','transient.requested_outputs','stringrow',1)
     121
     122                if (solution!='TransientSolution') and (md.transient.iscoupling):
     123                                md.checkmessage("Coupling with ocean can only be done in transient simulations!")
    116124
    117125                return md
     
    129137                WriteData(fid,prefix,'object',self,'fieldname','ismovingfront','format','Boolean')
    130138                WriteData(fid,prefix,'object',self,'fieldname','isslr','format','Boolean')
     139                WriteData(fid,prefix,'object',self,'fieldname','isoceancoupling','format','Boolean')
    131140                WriteData(fid,prefix,'object',self,'fieldname','iscoupler','format','Boolean')
    132141
  • issm/trunk-jpl/src/m/solve/solve.m

    r21530 r21576  
    117117marshall(md);                                          % bin file
    118118ToolkitsFile(md.toolkits,[md.miscellaneous.name '.toolkits']); % toolkits file
    119 BuildQueueScript(cluster,md.private.runtimename,md.miscellaneous.name,md.private.solution,md.settings.io_gather,md.debug.valgrind,md.debug.gprof,md.qmu.isdakota); % queue file
     119BuildQueueScript(cluster,md.private.runtimename,md.miscellaneous.name,md.private.solution,md.settings.io_gather,md.debug.valgrind,md.debug.gprof,md.qmu.isdakota,md.transient.isoceancoupling); % queue file
    120120
    121121%Upload all required files
  • issm/trunk-jpl/src/m/solve/solve.py

    r21530 r21576  
    113113        marshall(md)                                           # bin file
    114114        md.toolkits.ToolkitsFile(md.miscellaneous.name+'.toolkits')    # toolkits file
    115         cluster.BuildQueueScript(md.private.runtimename,md.miscellaneous.name,md.private.solution,md.settings.io_gather,md.debug.valgrind,md.debug.gprof,md.qmu.isdakota)    # queue file
     115        cluster.BuildQueueScript(md.private.runtimename,md.miscellaneous.name,md.private.solution,md.settings.io_gather,md.debug.valgrind,md.debug.gprof,md.qmu.isdakotai,md.transient.isoceancoupling)    # queue file
    116116
    117117        #Stop here if batch mode
Note: See TracChangeset for help on using the changeset viewer.