source: issm/oecreview/Archive/20545-21336/ISSM-21096-21097.diff@ 21337

Last change on this file since 21337 was 21337, checked in by Mathieu Morlighem, 8 years ago

CHG: added Archive/20545-21336

File size: 27.2 KB
  • ../trunk-jpl/src/m/solve/solve.js

     
    8080                if (md.verbose.solution){
    8181                        console.log('checking model consistency');
    8282                }
    83                 if (solutionstring === 'FlaimSolution'){
    84                         md.priv.isconsistent=true;
    85                         md.mesh.checkconsistency(md,solutionstring);
    86                         md.flaim.checkconsistency(md,solutionstring);
    87                         if (md.priv.isconsistent==false){
    88                                 throw error('solve error message: model not consistent, see messages above');
    89                         }
    90                 }
    91                 else{
    92                         ismodelselfconsistent(md);
    93                 }
     83                ismodelselfconsistent(md);
    9484        }
    9585
    9686        //If we are restarting, actually use the provided runtime name:
  • ../trunk-jpl/src/m/solve/marshall.js

     
    1818        for (field in md){
    1919
    2020                //Some properties do not need to be marshalled
    21                 if (field == 'results' | field =='radaroverlay' | field == 'toolkits' | field =='cluster' | field == 'flaim' | field == 'priv') continue;
     21                if (field == 'results' | field =='radaroverlay' | field == 'toolkits' | field =='cluster' | field == 'priv') continue;
    2222               
    2323                //Check that current field is a class
    2424                if(typeof md[field] == 'function'){
  • ../trunk-jpl/src/m/solve/solve.py

     
    8383        #check model consistency
    8484        if m.strcmpi(options.getfieldvalue('checkconsistency','yes'),'yes'):
    8585                print "checking model consistency"
    86                 if solutionstring.lower() == 'flaimsolution':
    87                         md.private.isconsistent=True
    88                         md.mesh.checkconsistency(md,solutionstring)
    89                         md.flaim.checkconsistency(md,solutionstring)
    90                         if not md.private.isconsistent:
    91                                 raise RuntimeError("Model not consistent, see messages above.")
    92                 else:
    93                         ismodelselfconsistent(md)
     86                ismodelselfconsistent(md)
    9487
    9588        #First, build a runtime name that is unique
    9689        restart=options.getfieldvalue('restart','')
     
    111104        if md.qmu.isdakota:
    112105                md=preqmu(md,options)
    113106
    114         #flaim analysis
    115         if solutionstring.lower() == 'flaimSolution':
    116                 solutionstring='FlaimSolution'
    117                 md=flaim_sol(md,options)
    118                 md.private.solution=solutionstring
    119                 return md
    120 
    121107        #Do we load results only?
    122108        if options.getfieldvalue('loadonly',False):
    123109                md=loadresultsfromcluster(md)
  • ../trunk-jpl/src/m/solve/solve.m

     
    7777        if md.verbose.solution,
    7878                disp('checking model consistency');
    7979        end
    80         if (strcmp(solutionstring,'FlaimSolution'))
    81                 md.private.isconsistent=true;
    82                 md=checkconsistency(md.mesh,md,solutionstring);
    83                 md=checkconsistency(md.flaim,md,solutionstring);
    84                 if md.private.isconsistent==false,
    85                         error('Model not consistent, see messages above');
    86                 end
    87         else
    88                 ismodelselfconsistent(md),
    89         end
     80        ismodelselfconsistent(md),
    9081end
    9182
    9283%If we are restarting, actually use the provided runtime name:
     
    111102        md=preqmu(md,options);
    112103end
    113104
    114 %flaim analysis (To be removed?)
    115 if (strcmp(solutionstring,'FlaimSolution'))
    116         %fmdir     = getfieldvalue(options,'fmdir',['fm' num2str(feature('GetPid'))]);
    117         %overwrite = getfieldvalue(options,'overwrite','n');
    118         %keep      = getfieldvalue(options,'keep','y');
    119         %latsgn    = getfieldvalue(options,'latsgn',0);
    120         %cmap      = getfieldvalue(options,'cmap',[]);
    121         md=flaim_sol(md,options);
    122         md.private.solution=solutionstring;
    123         return;
    124 end
    125 
    126105%Do we load results only?
    127106if getfieldvalue(options,'loadonly',false),
    128107        md=loadresultsfromcluster(md);
  • ../trunk-jpl/src/m/solve/marshall.py

     
    2626        for field in md.properties():
    2727
    2828                #Some properties do not need to be marshalled
    29                 if field in ['results','radaroverlay','toolkits','cluster','flaim','private']:
     29                if field in ['results','radaroverlay','toolkits','cluster','private']:
    3030                        continue
    3131
    3232                #Check that current field is an object
  • ../trunk-jpl/src/m/solve/marshall.m

     
    2323        field=fields{i};
    2424
    2525        %Some properties do not need to be marshalled
    26         if ismember(field,{'results' 'radaroverlay' 'toolkits' 'cluster'  'flaim' 'private'}),
     26        if ismember(field,{'results' 'radaroverlay' 'toolkits' 'cluster' 'private'}),
    2727                continue;
    2828        end
    2929
  • ../trunk-jpl/src/m/consistency/ismodelselfconsistent.py

     
    3636        elif solutiontype == 'TransientSolution':
    3737                analyses=['StressbalanceAnalysis','StressbalanceVerticalAnalysis','StressbalanceSIAAnalysis','L2ProjectionBaseAnalysis','ThermalAnalysis','MeltingAnalysis','EnthalpyAnalysis','MasstransportAnalysis']
    3838
    39         elif solutiontype == 'FlaimSolution':
    40                 analyses=['FlaimAnalysis']
    41 
    4239        elif solutiontype == 'HydrologySolution':
    4340                analyses=['L2ProjectionBaseAnalysis','HydrologyShreveAnalysis','HydrologyDCInefficientAnalysis','HydrologyDCEfficientAnalysis']
    4441
  • ../trunk-jpl/src/m/consistency/ismodelselfconsistent.js

     
    9292                        analyses=['StressbalanceAnalysis','StressbalanceVerticalAnalysis','StressbalanceSIAAnalysis','L2ProjectionBaseAnalysis','ThermalAnalysis','MeltingAnalysis','EnthalpyAnalysis','MasstransportAnalysis','HydrologySommersAnalysis'];
    9393                        break;
    9494
    95                 }else if(solutiontype ==='FlaimSolution'){
    96                         analyses=['FlaimAnalysis'];
    97                         break;
    98        
    9995                }else if(solutiontype ==='SealevelriseSolution'){
    10096                        analyses=['SealevelriseAnalysis'];
    10197                        break;
  • ../trunk-jpl/src/m/consistency/ismodelselfconsistent.m

     
    6767                analyses={'GiaAnalysis'};
    6868        elseif strcmp(solutiontype,'TransientSolution')
    6969                analyses={'StressbalanceAnalysis','StressbalanceVerticalAnalysis','StressbalanceSIAAnalysis','L2ProjectionBaseAnalysis','ThermalAnalysis','MeltingAnalysis','EnthalpyAnalysis','MasstransportAnalysis','HydrologySommersAnalysis'};
    70         elseif strcmp(solutiontype,'FlaimSolution')
    71                 analyses={'FlaimAnalysis'};
    7270        elseif strcmp(solutiontype,'SealevelriseSolution')
    7371                analyses={'SealevelriseAnalysis'};
    7472        elseif strcmp(solutiontype,'HydrologySolution')
  • ../trunk-jpl/src/m/classes/flaim.py

     
    1 import numpy
    2 from collections import OrderedDict
    3 from fielddisplay import fielddisplay
    4 from checkfield import checkfield
    5 from WriteData import WriteData
    6 
    7 class flaim(object):
    8         """
    9         FLAIM class definition
    10 
    11            Usage:
    12               flaim=flaim();
    13         """
    14 
    15         def __init__(self): # {{{
    16                 self.targets            = ''
    17                 self.tracks             = ''
    18                 self.flightreqs         = OrderedDict()
    19                 self.criterion          = float('NaN')
    20                 self.gridsatequator     = 200000
    21                 self.usevalueordering   = True
    22                 self.split_antimeridian = True
    23                 self.solution           = ''
    24                 self.quality            = 0
    25                 self.path_optimize      = False
    26                 self.opt_ndir           = 1
    27                 self.opt_dist           = 25
    28                 self.opt_niter          = 30000
    29                 #}}}
    30         def __repr__(self): # {{{
    31                 string='   FLAIM - Flight Line Adaptation using Ice sheet Modeling:'
    32 
    33                 string="%s\n\n%s"%(string,'      Input:')
    34                 string="%s\n%s"%(string,fielddisplay(self,'targets'            ,'name of kml output targets file '))
    35                 string="%s\n%s"%(string,fielddisplay(self,'tracks'             ,'name of kml input tracks file '))
    36                 string="%s\n%s"%(string,fielddisplay(self,'flightreqs'         ,'structure of kml flight requirements (not used yet)'))
    37                 string="%s\n%s"%(string,fielddisplay(self,'criterion'          ,'element or nodal criterion for flight path evaluation (metric)'))
    38 
    39                 string="%s\n\n%s"%(string,'      Arguments:')
    40                 string="%s\n%s"%(string,fielddisplay(self,'gridsatequator'     ,'number of grids at equator (determines resolution)'))
    41                 string="%s\n%s"%(string,fielddisplay(self,'usevalueordering'   ,'flag to consider target values for flight path evaluation'))
    42                 string="%s\n%s"%(string,fielddisplay(self,'split_antimeridian' ,'flag to split polygons on the antimeridian'))
    43                
    44                 string="%s\n\n%s"%(string,'      Optimization:')
    45                 string="%s\n%s"%(string,fielddisplay(self,'path_optimize'     ,'optimize? (default false)'))
    46                 string="%s\n%s"%(string,fielddisplay(self,'opt_ndir'     ,['number of directions to test when moving a point.  If this value = 1, a random direction is tested.',\
    47                                                                                   'A value > 1 results in directions equally spaced from [0, 2*PI] being tested.',\
    48                                                                                   'For example, 4 would result in directions [0, PI/2, PI, 3PI/2].']))
    49                 string="%s\n%s"%(string,fielddisplay(self,'opt_dist'     ,'specifies the distance in km (default 25) to move a randomly selected path point on each iteration'))
    50                 string="%s\n%s"%(string,fielddisplay(self,'opt_niter'     ,['number of iterations (default 30,000) to run for flightplan optimization',\
    51                                                                                    'i.e. the number of times to randomly select a point and move it.']))
    52 
    53                 string="%s\n\n%s"%(string,'      Output:')
    54                 string="%s\n%s"%(string,fielddisplay(self,'solution'           ,'name of kml solution file'))
    55                 string="%s\n%s"%(string,fielddisplay(self,'quality'            ,'quality of kml solution'))
    56                 return string
    57                 #}}}
    58         def checkconsistency(self,md,solution,analyses):    # {{{
    59 
    60                 #Early return
    61                 if not solution=='FlaimSolution':
    62                         return md
    63 
    64                 md = checkfield(md,'fieldname','flaim.tracks','file',1)
    65                 if numpy.any(numpy.isnan(md.flaim.criterion)) or not md.flaim.criterion:
    66                         md = checkfield(md,'fieldname','flaim.targets','file',1)
    67                 else:
    68                         md = checkfield(md,'fieldname','flaim.criterion','numel',[md.mesh.numberofvertices,md.mesh.numberofelements])
    69 
    70                 return md
    71         # }}}
  • ../trunk-jpl/src/m/classes/flaim.m

     
    1 %FLAIM class definition
    2 %
    3 %   Usage:
    4 %      flaim=flaim();
    5 
    6 classdef flaim
    7         properties (SetAccess=public)
    8                 targets            = ''
    9                 tracks             = ''
    10                 flightreqs         = struct()
    11                 criterion          = NaN
    12                 gridsatequator     = 200000
    13                 usevalueordering   = true
    14                 split_antimeridian = true
    15                 solution           = ''
    16                 quality            = 0
    17                 path_optimize      = false
    18                 opt_ndir           = 1
    19                 opt_dist           = 25
    20                 opt_niter          = 30000
    21         end
    22         methods
    23                 function self = flaim(varargin) % {{{
    24                         switch nargin
    25                                 case 0
    26                                         self=setdefaultparameters(self);
    27                                 otherwise
    28                                         error('constructor not supported');
    29                         end
    30                 end % }}}
    31                 function self = setdefaultparameters(self) % {{{
    32 
    33                 end % }}}
    34                 function md = checkconsistency(self,md,solution,analyses) % {{{
    35 
    36                         %Early return
    37                         if ~strcmp(solution,'FlaimSolution'), return; end
    38 
    39                         md = checkfield(md,'fieldname','flaim.tracks','file',1);
    40                         if any(isnan(md.flaim.criterion)) || isempty(md.flaim.criterion)
    41                                 md = checkfield(md,'fieldname','flaim.targets','file',1);
    42                         else
    43                                 md = checkfield(md,'fieldname','flaim.criterion','numel',[md.mesh.numberofvertices md.mesh.numberofelements]);
    44                         end
    45 
    46                 end % }}}
    47                 function disp(self) % {{{
    48 
    49                         disp(sprintf('   FLAIM - Flight Line Adaptation using Ice sheet Modeling:'));
    50 
    51                         disp(sprintf('\n      Input:'));
    52                         fielddisplay(self,'targets'            ,'name of kml output targets file ');
    53                         fielddisplay(self,'tracks'             ,'name of kml input tracks file ');
    54                         fielddisplay(self,'flightreqs'         ,'structure of kml flight requirements (not used yet)');
    55                         fielddisplay(self,'criterion'          ,'element or nodal criterion for flight path evaluation (metric)');
    56 
    57                         disp(sprintf('\n      Arguments:'));
    58                         fielddisplay(self,'gridsatequator'     ,'number of grids at equator (determines resolution)');
    59                         fielddisplay(self,'usevalueordering'   ,'flag to consider target values for flight path evaluation');
    60                         fielddisplay(self,'split_antimeridian' ,'flag to split polygons on the antimeridian');
    61 
    62                         disp(sprintf('\n      Optimization:'));
    63                         fielddisplay(self,'path_optimize'     ,'optimize? (default false)');
    64                         fielddisplay(self,'opt_ndir'     ,{'number of directions to test when moving a point.  If this value = 1, a random direction is tested.',...
    65                                                                                           'A value > 1 results in directions equally spaced from [0, 2*PI] being tested.',...
    66                                                                                           'For example, 4 would result in directions [0, PI/2, PI, 3PI/2].'});
    67                         fielddisplay(self,'opt_dist'     ,'specifies the distance in km (default 25) to move a randomly selected path point on each iteration');
    68                         fielddisplay(self,'opt_niter'     ,{'number of iterations (default 30,000) to run for flightplan optimization',...
    69                                                                                            'i.e. the number of times to randomly select a point and move it.'});
    70 
    71                         disp(sprintf('\n      Output:'));
    72                         fielddisplay(self,'solution'           ,'name of kml solution file');
    73                         fielddisplay(self,'quality'            ,'quality of kml solution');
    74                 end % }}}
    75                 function savemodeljs(self,fid,modelname) % {{{
    76                
    77                         %do nothing for now!
    78                         if ~isempty(self.targets),
    79                                 error('flaim savemodeljs error message: not supported yet!');
    80                         end
    81 
    82                 end % }}}
    83         end
    84 end
  • ../trunk-jpl/src/m/classes/flaim.js

     
    1 //FLAIM class definition
    2 //
    3 //   Usage:
    4 //      flaim=new flaim();
    5 
    6 function flaim (){
    7         //methods
    8         this.setdefaultparameters = function(){// {{{
    9         }// }}}
    10         this.disp= function(){// {{{
    11 
    12                 console.log(sprintf('   FLAIM - Flight Line Adaptation using Ice sheet Modeling:'));
    13 
    14                 console.log(sprintf('\n      Input:'));
    15                 fielddisplay(this,'targets'            ,'name of kml output targets file ');
    16                 fielddisplay(this,'tracks'             ,'name of kml input tracks file ');
    17                 fielddisplay(this,'flightreqs'         ,'structure of kml flight requirements (not used yet)');
    18                 fielddisplay(this,'criterion'          ,'element or nodal criterion for flight path evaluation (metric)');
    19 
    20                 console.log(sprintf('\n      Arguments:'));
    21                 fielddisplay(this,'gridsatequator'     ,'number of grids at equator (determines resolution)');
    22                 fielddisplay(this,'usevalueordering'   ,'flag to consider target values for flight path evaluation');
    23                 fielddisplay(this,'split_antimeridian' ,'flag to split polygons on the antimeridian');
    24 
    25                 console.log(sprintf('\n      Optimization:'));
    26                 fielddisplay(this,'path_optimize'     ,'optimize? (default false)');
    27                 fielddisplay(this,'opt_ndir'     ,['number of directions to test when moving a point.  If this value = 1, a random direction is tested.', 'A value > 1 results in directions equally spaced from [0, 2*PI] being tested.', 'For example, 4 would result in directions [0, PI/2, PI, 3PI/2].']);
    28                 fielddisplay(this,'opt_dist'     ,'specifies the distance in km (default 25) to move a randomly selected path point on each iteration');
    29                 fielddisplay(this,'opt_niter'     ,['number of iterations (default 30,000) to run for flightplan optimization', 'i.e. the number of times to randomly select a point and move it.']);
    30 
    31                 console.log(sprintf('\n      Output:'));
    32                 fielddisplay(this,'solution'           ,'name of kml solution file');
    33                 fielddisplay(this,'quality'            ,'quality of kml solution');
    34 
    35         }// }}}
    36         this.checkconsistency = function(md,solution,analyses) { // {{{
    37 
    38                 //Early return
    39                 if (solution!='FlaimSolution') return;
    40 
    41                 checkfield(md,'fieldname','flaim.tracks','file',1);
    42                 if (isNaN(md.flaim.criterion) | md.flaim.criterion.length==0){
    43                         checkfield(md,'fieldname','flaim.targets','file',1);
    44                 }
    45                 else{
    46                         checkfield(md,'fieldname','flaim.criterion','numel',[md.mesh.numberofvertices, md.mesh.numberofelements]);
    47                 }
    48         } //}}}
    49         //properties
    50         // {{{
    51 
    52         this.targets            = '';
    53         this.tracks             = '';
    54         this.flightreqs         = {};
    55         this.criterion          = NaN;
    56         this.gridsatequator     = 200000;
    57         this.usevalueordering   = true;
    58         this.split_antimeridian = true;
    59         this.solution           = '';
    60         this.quality            = 0;
    61         this.path_optimize      = false;
    62         this.opt_ndir           = 1;
    63         this.opt_dist           = 25;
    64         this.opt_niter          = 30000;
    65 
    66         this.setdefaultparameters();
    67         //}}}
    68 }
  • ../trunk-jpl/src/m/classes/model.m

     
    4242                gia              = 0;
    4343
    4444                autodiff         = 0;
    45                 flaim            = 0;
    4645                inversion        = 0;
    4746                qmu              = 0;
    4847
     
    922921                        if isfield(structmd,'y'), md.mesh.y=structmd.y; end
    923922                        if isfield(structmd,'x'), md.mesh.x=structmd.x; end
    924923                        if isfield(structmd,'z'), md.mesh.z=structmd.z; end
    925                         if isfield(structmd,'mask'), md.flaim.criterion=structmd.mask; end
    926924                        if isfield(structmd,'diagnostic_ref'), md.stressbalance.referential=structmd.diagnostic_ref; end
    927925                        if isfield(structmd,'npart'); md.qmu.numberofpartitions=structmd.npart; end
    928926                        if isfield(structmd,'part'); md.qmu.partition=structmd.part; end
     
    10921090                        md.calving          = calving();
    10931091                        md.gia              = gia();
    10941092                        md.autodiff         = autodiff();
    1095                         md.flaim            = flaim();
    10961093                        md.inversion        = inversion();
    10971094                        md.qmu              = qmu();
    10981095                        md.radaroverlay     = radaroverlay();
     
    12641261                        disp(sprintf('%19s: %-22s -- %s','calving'         ,['[1x1 ' class(self.calving) ']'],'parameters for calving'));
    12651262                        disp(sprintf('%19s: %-22s -- %s','gia'             ,['[1x1 ' class(self.gia) ']'],'parameters for gia solution'));
    12661263                        disp(sprintf('%19s: %-22s -- %s','autodiff'        ,['[1x1 ' class(self.autodiff) ']'],'automatic differentiation parameters'));
    1267                         disp(sprintf('%19s: %-22s -- %s','flaim'           ,['[1x1 ' class(self.flaim) ']'],'flaim parameters'));
    12681264                        disp(sprintf('%19s: %-22s -- %s','inversion'       ,['[1x1 ' class(self.inversion) ']'],'parameters for inverse methods'));
    12691265                        disp(sprintf('%19s: %-22s -- %s','qmu'             ,['[1x1 ' class(self.qmu) ']'],'dakota properties'));
    12701266                        disp(sprintf('%19s: %-22s -- %s','outputdefinition',['[1x1 ' class(self.outputdefinition) ']'],'output definition'));
  • ../trunk-jpl/src/m/classes/model.py

     
    4646from transient import transient
    4747from gia import gia
    4848from autodiff import autodiff
    49 from flaim import flaim
    5049from inversion import inversion
    5150from outputdefinition import outputdefinition
    5251from qmu import qmu
     
    110109                self.gia              = gia()
    111110
    112111                self.autodiff         = autodiff()
    113                 self.flaim            = flaim()
    114112                self.inversion        = inversion()
    115113                self.qmu              = qmu()
    116114
     
    153151                        'calving',\
    154152                                                'gia',\
    155153                        'autodiff',\
    156                         'flaim',\
    157154                        'inversion',\
    158155                        'qmu',\
    159156                        'outputdefinition',\
     
    194191                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("levelset","[%s,%s]" % ("1x1",obj.levelset.__class__.__name__),"parameters for moving boundaries (level-set method)"))
    195192                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("calving","[%s,%s]" % ("1x1",obj.calving.__class__.__name__),"parameters for calving"))
    196193                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("autodiff","[%s,%s]" % ("1x1",obj.autodiff.__class__.__name__),"automatic differentiation parameters"))
    197                 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("flaim","[%s,%s]" % ("1x1",obj.flaim.__class__.__name__),"flaim parameters"))
    198194                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("inversion","[%s,%s]" % ("1x1",obj.inversion.__class__.__name__),"parameters for inverse methods"))
    199195                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("qmu","[%s,%s]" % ("1x1",obj.qmu.__class__.__name__),"dakota properties"))
    200196                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("outputdefinition","[%s,%s]" % ("1x1",obj.outputdefinition.__class__.__name__),"output definition"))
  • ../trunk-jpl/src/m/classes/oldclasses/flaim.m

     
     1%FLAIM class definition
     2%
     3%   Usage:
     4%      flaim=flaim();
     5
     6classdef flaim
     7        properties (SetAccess=public)
     8                targets            = ''
     9                tracks             = ''
     10                flightreqs         = struct()
     11                criterion          = NaN
     12                gridsatequator     = 200000
     13                usevalueordering   = true
     14                split_antimeridian = true
     15                solution           = ''
     16                quality            = 0
     17                path_optimize      = false
     18                opt_ndir           = 1
     19                opt_dist           = 25
     20                opt_niter          = 30000
     21        end
     22end
  • ../trunk-jpl/src/m/classes/model.js

     
    3838                        console.log(sprintf("//19s: //-22s -- //s","calving"         ,"[1x1 " + typeof(this.calving) + "]","parameters for calving"));
    3939                        console.log(sprintf("//19s: //-22s -- //s","gia"             ,"[1x1 " + typeof(this.gia) + "]","parameters for gia solution"));
    4040                        console.log(sprintf("//19s: //-22s -- //s","autodiff"        ,"[1x1 " + typeof(this.autodiff) + "]","automatic differentiation parameters"));
    41                         console.log(sprintf("//19s: //-22s -- //s","flaim"           ,"[1x1 " + typeof(this.flaim) + "]","flaim parameters"));
    4241                        console.log(sprintf("//19s: //-22s -- //s","inversion"       ,"[1x1 " + typeof(this.inversion) + "]","parameters for inverse methods"));
    4342                        console.log(sprintf("//19s: //-22s -- //s","qmu"             ,"[1x1 " + typeof(this.qmu) + "]","dakota properties"));
    4443                        console.log(sprintf("//19s: //-22s -- //s","outputdefinition","[1x1 " + typeof(this.outputdefinition) + "]","output definition"));
     
    8079                        this.calving          = new calving();
    8180                        this.gia              = new gia();
    8281                        this.autodiff         = new autodiff();
    83                         this.flaim            = new flaim();
    8482                        this.inversion        = new inversion();
    8583                        this.qmu              = new qmu();
    8684                        this.radaroverlay     = new radaroverlay();
     
    9896                        for (var field in this){
    9997
    10098                                //Some properties do not need to be fixed
    101                                 if (field == 'results' | field =='radaroverlay' | field == 'toolkits' | field =='cluster' | field == 'flaim' | field == 'priv') continue;
     99                                if (field == 'results' | field =='radaroverlay' | field == 'toolkits' | field =='cluster' | field == 'priv') continue;
    102100
    103101                                //Check that current field is a class
    104102                                if(typeof this[field] == 'function'){
     
    611609                this.gia              = 0;
    612610
    613611                this.autodiff         = 0;
    614                 this.flaim            = 0;
    615612                this.inversion        = 0;
    616613                this.qmu              = 0;
    617614
  • ../trunk-jpl/src/m/classes/slr.py

     
    1414        """
    1515       
    1616        def __init__(self): # {{{
    17                 self.deltathickness     = NaN
    18                 self.sealevel                   = NaN
    19                 self.maxiter                    = 0
    20                 self.reltol                     = 0
    21                 self.abstol                     = 0
    22                 self.love_h             = 0 #provided by PREM model()
    23                 self.love_k             = 0 #ideam
    24                 self.love_l             = 0 #ideam
    25                 self.tide_love_h        = 0
    26                 self.tide_love_k        = 0
    27                 self.rigid                      = 0
    28                 self.elastic            = 0
    29                 self.rotation           = 0
    30                 self.degacc             = 0
    31                 self.requested_outputs  = []
    32                 self.transitions        = []
     17                self.deltathickness    = NaN
     18                self.sealevel          = NaN
     19                self.maxiter           = 0
     20                self.reltol            = 0
     21                self.abstol            = 0
     22                self.love_h            = 0 #provided by PREM model()
     23                self.love_k            = 0 #ideam
     24                self.love_l            = 0 #ideam
     25                self.tide_love_h       = 0
     26                self.tide_love_k       = 0
     27                self.rigid             = 0
     28                self.elastic           = 0
     29                self.rotation          = 0
     30                self.degacc            = 0
     31                self.requested_outputs = []
     32                self.transitions       = []
    3333               
    3434                #set defaults
    3535                self.setdefaultparameters()
  • ../trunk-jpl/src/m/contrib/defleurian/netCDF/ClassTry.py

     
    7171                        'calving':'calving',\
    7272                                                'gia':'gia',\
    7373                        'autodiff':'autodiff',\
    74                         'flaim':'flaim',\
    7574                        'inversion':'inversion',\
    7675                        'qmu':'qmu',\
    7776                        'outputdefinition':'outputdefinition',\
     
    111110                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("transient","[%s,%s]" % ("1x1",obj.transient.__class__.__name__),"parameters for transient solution"))
    112111                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("calving","[%s,%s]" % ("1x1",obj.calving.__class__.__name__),"parameters for calving"))
    113112                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("autodiff","[%s,%s]" % ("1x1",obj.autodiff.__class__.__name__),"automatic differentiation parameters"))
    114                 string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("flaim","[%s,%s]" % ("1x1",obj.flaim.__class__.__name__),"flaim parameters"))
    115113                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("inversion","[%s,%s]" % ("1x1",obj.inversion.__class__.__name__),"parameters for inverse methods"))
    116114                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("qmu","[%s,%s]" % ("1x1",obj.qmu.__class__.__name__),"dakota properties"))
    117115                string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("outputdefinition","[%s,%s]" % ("1x1",obj.outputdefinition.__class__.__name__),"output definition"))
  • ../trunk-jpl/src/m/os/flaimdir.m

     
    1 function FLAIM_DIR=flaimdir()
    2 %ISSMDIR - Get FLAIM installation directory
    3 %
    4 %   Usage:
    5 %      FLAIM_DIR=flaimdir()
    6 
    7 FLAIM_DIR=[issmdir() '/externalpackages/flaim/install'];
Note: See TracBrowser for help on using the repository browser.