Changeset 27531


Ignore:
Timestamp:
01/19/23 06:55:38 (2 years ago)
Author:
vverjans
Message:

NEW added tutorial for StISSM

Location:
issm/trunk-jpl
Files:
5 added
6 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/SMBarma.py

    r27484 r27531  
    2020        self.polynomialparams = np.nan
    2121        self.ar_order = 0
     22        self.ma_order = 0
    2223        self.arlag_coefs = np.nan
    2324        self.ma_order = 0
     
    2930        self.elevationbins = np.nan
    3031        self.refelevation = np.nan
     32        self.datebreaks = np.nan
    3133        self.steps_per_step = 1
    3234        self.averaging = 0
  • issm/trunk-jpl/src/m/classes/clusters/pace.m

    r27262 r27531  
    99        properties (SetAccess=public)
    1010        % {{{
    11                 name            = 'login-phoenix-4.pace.gatech.edu' %Phoenix cluster name
     11                name            = 'login-phoenix-slurm.pace.gatech.edu' %Phoenix cluster name
    1212                login           = ''; %personal login
    1313                numnodes        = 1; %number of nodes requested
     
    1717                queue           = 'inferno'; %queue
    1818                time            = 60; %time requested per run [minutes]
    19                 accountname     = 'GT-arobel3-atlas'; %group account name
     19                accountname     = 'gts-arobel3-atlas'; %group account name
    2020                codepath        = ''; %path to issm binaries
    2121                executionpath   = ''; %path for execution folder
     
    6262                        fid=fopen([modelname '.queue'],'w');
    6363                        fprintf(fid,'#!/bin/sh\n');
    64                         fprintf(fid,'#PBS -l walltime=%i\n',cluster.time*60); %conversion of walltime from minutes to seconds.
    65                         fprintf(fid,'#PBS -N %s\n',modelname);
    66                         fprintf(fid,'#PBS -l nodes=1:ppn=%i\n',cluster.np);
    67                         fprintf(fid,'#PBS -l pmem=%igb\n',cluster.mem);
    68                         fprintf(fid,'#PBS -q %s\n',cluster.queue);
    69                         fprintf(fid,'#PBS -A %s\n',cluster.accountname);
    70                
    71                         fprintf(fid,'#PBS -o %s/%s/%s.outlog \n',cluster.executionpath,dirname,modelname);
    72          fprintf(fid,'#PBS -e %s/%s/%s.errlog \n\n',cluster.executionpath,dirname,modelname);
    7364
    74                         fprintf(fid,'export PBS_O_WORKDIR=%s\n',[cluster.executionpath '/' dirname]);
    75                         fprintf(fid,'cd $PBS_O_WORKDIR\n');
    76                         fprintf(fid,'mpiexec -np %i %s/%s %s %s %s \n',cluster.np,cluster.codepath,executable,solution,[cluster.executionpath '/' dirname],modelname); 
     65                        fprintf(fid,'#SBATCH -t%i\n',cluster.time);
     66         fprintf(fid,'#SBATCH -J%s\n',modelname);
     67         fprintf(fid,'#SBATCH -N 1 --ntasks-per-node=%i\n',cluster.np);
     68         %fprintf(fid,'#SBATCH -N %i\n',cluster.numnodes);
     69         %fprintf(fid,'#SBATCH --ntasks=1\n');
     70         %fprintf(fid,'#SBATCH --cpus-per-task=%i\n',cluster.np);
     71         fprintf(fid,'#SBATCH --mem-per-cpu=%iG\n',cluster.mem);
     72         fprintf(fid,'#SBATCH -p%s\n',cluster.queue);
     73         fprintf(fid,'#SBATCH -A %s\n',cluster.accountname);
     74         fprintf(fid,'#SBATCH -o%s/%s/%s.outlog \n',cluster.executionpath,dirname,modelname);
     75         fprintf(fid,'#SBATCH -e%s/%s/%s.errlog \n\n',cluster.executionpath,dirname,modelname);
     76         fprintf(fid,'export SLURM_SUBMIT_DIR=%s\n',[cluster.executionpath '/' dirname]);
     77         fprintf(fid,'cd $SLURM_SUBMIT_DIR\n');
     78         fprintf(fid,'export LD_LIBRARY_PATH=/opt/slurm/current/lib:/opt/pmix/current/lib:$LD_LIBRARY_PATH \n');
     79         fprintf(fid,'srun --mpi=pmi2 -n %i %s/%s %s %s %s \n',cluster.np,cluster.codepath,executable,solution,[cluster.executionpath '/' dirname],modelname);
    7780
    7881                        fclose(fid);
     
    97100                        disp('launching solution sequence on remote cluster');
    98101                        if ~isempty(restart)
    99                                 launchcommand=['cd ' cluster.executionpath ' && cd ' dirname ' && qsub ' modelname '.queue '];
     102                                launchcommand=['cd ' cluster.executionpath ' && cd ' dirname ' && sbatch ' modelname '.queue '];
    100103                        else
    101104                                launchcommand=['cd ' cluster.executionpath ' && rm -rf ./' dirname ' && mkdir ' dirname ...
    102                                         ' && cd ' dirname ' && mv ../' dirname '.tar.gz ./ && tar -zxf ' dirname '.tar.gz  && qsub ' modelname '.queue '];
     105                                        ' && cd ' dirname ' && mv ../' dirname '.tar.gz ./ && tar -zxf ' dirname '.tar.gz  && sbatch ' modelname '.queue '];
    103106                        end
    104107                        issmssh(cluster.name,cluster.login,cluster.port,launchcommand);
  • issm/trunk-jpl/src/m/classes/hydrologyarmapw.m

    r27480 r27531  
    1818      malag_coefs              = NaN;
    1919                datebreaks               = NaN;
     20                requested_outputs        = {};
    2021        end
    2122        methods
     
    184185                        WriteData(fid,prefix,'data',dbreaks,'name','md.hydrology.datebreaks','format','DoubleMat','scale',yts);
    185186                        WriteData(fid,prefix,'data',tempmonthlyfactors,'name','md.hydrology.monthlyfactors','format','DoubleMat');
    186                         WriteData(fid,prefix,'data',{'FrictionWaterPressure'},'name','md.hydrology.requested_outputs','format','StringArray');
     187                       
     188                        %process requested outputs
     189         outputs = self.requested_outputs;
     190         pos  = find(ismember(outputs,'default'));
     191         if ~isempty(pos),
     192            outputs(pos) = [];                         %remove 'default' from outputs
     193            outputs      = [outputs defaultoutputs(self,md)]; %add defaults
     194         end
     195         WriteData(fid,prefix,'data',outputs,'name','md.hydrology.requested_outputs','format','StringArray');
    187196                end % }}}
    188197        end
  • issm/trunk-jpl/src/m/classes/stochasticforcing.py

    r27484 r27531  
    7979        structstoch = self.structstochforcing()
    8080        # Check if hydrologyarmapw is used
    81         if type(md.hydrology).__name__ == 'hydrologyarmapw' and md.transient.ishydrology:
     81        if((type(md.hydrology).__name__ == 'hydrologyarmapw') and md.transient.ishydrology==1):
    8282            ispwHydroarma = 1
    8383        else:
     
    241241                md.stochasticforcing.stochastictimestep = md.timestepping.time_step #by default: stochastictimestep set to ISSM time step
    242242            # Check if hydroarmapw is used
    243             if type(md.hydrology).__name__ == 'hydrologyarmapw' and md.transient.ishydrology:
     243            if((type(md.hydrology).__name__ == 'hydrologyarmapw') and md.transient.ishydrology==1):
    244244                ispwHydroarma = 1
    245245            else:
  • issm/trunk-jpl/src/m/contrib/morlighem/modeldata/interpBedmachineGreenland.m

    r27277 r27531  
    4545                ['/Users/larour/ModelData/BedMachine/' basename '-' ncdate '.nc'],...
    4646                ['./' basename '-' ncdate '.nc'],...
     47                '/media/vincent/TOSH4TB/GeorgiaTech/DataSearch/BedMachine/BedMachineGreenland-2021-04-20.nc',...
    4748                };
    4849
     
    8990if strcmp(string,'mask') | strcmp(string,'source'),
    9091        %Need nearest neighbor to avoid interpolation between 0 and 2
    91         output = InterpFromGrid(xdata,ydata,data,double(X),double(Y),'nearest');
     92        %output = InterpFromGrid(xdata,ydata,data,double(X),double(Y),'nearest');
     93        output = InterpFromGridToMesh(xdata,flipud(ydata),flipud(data),double(X),double(Y),NaN); %VV
    9294else
    93         output = InterpFromGrid(xdata,ydata,data,double(X),double(Y));
     95        %output = InterpFromGrid(xdata,ydata,data,double(X),double(Y));
     96        output = InterpFromGridToMesh(xdata,flipud(ydata),flipud(data),double(X),double(Y),NaN); %VV
    9497end
    9598
  • issm/trunk-jpl/src/m/contrib/morlighem/modeldata/interpSeaRISE.m

    r27277 r27531  
    5858                        searisenc='/totten_1/ModelData/SeaRISE/Antarctica_5km_dev1.0.nc';
    5959                end
     60   case {'vincentxps159500'}
     61                if hemisphere==1
     62                        searisenc = '/media/vincent/TOSH4TB/GeorgiaTech/ISSM/fromSeroussi/GrIS04Feb2022/seariseData/Greenland_5km_dev1.2.nc';
     63                end
    6064        otherwise
    6165                error('hostname not supported yet');
     
    8084if verbose, disp(['   -- SeaRISE: interpolating ' string]); end
    8185if strcmpi(string,'LandMask');
    82         dataout = InterpFromGrid(xdata,ydata,data,xproj,yproj,'nearest');
     86        %dataout = InterpFromGrid(xdata,ydata,data,xproj,yproj,'nearest');
     87        dataout = InterpFromGridToMesh(xdata,ydata,data,xproj,yproj,NaN); %VV
    8388else
    84         dataout = InterpFromGrid(xdata,ydata,data,xproj,yproj);
     89        %dataout = InterpFromGrid(xdata,ydata,data,xproj,yproj);
     90        dataout = InterpFromGridToMesh(xdata,ydata,data,xproj,yproj,NaN); %VV
    8591end
    8692dataout = reshape(dataout,size(X,1),size(X,2));
Note: See TracChangeset for help on using the changeset viewer.