Changeset 19901


Ignore:
Timestamp:
12/16/15 14:47:19 (9 years ago)
Author:
Mathieu Morlighem
Message:

CHG: added check isinf in js, need to add the same to checkconsistency

Location:
issm/trunk-jpl/src/m/classes
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/SMBforcing.js

    r19860 r19901  
    3131
    3232                        if(ArrayAnyEqual(ArrayIsMember(MasstransportAnalysisEnum(),analyses),1)){
    33                                 checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1);
     33                                checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1,'Inf',1);
    3434                        }
    3535                        if(ArrayAnyEqual(ArrayIsMember(BalancethicknessAnalysisEnum(),analyses),1)){
    36                                 checkfield(md,'fieldname','smb.mass_balance','size',[md.mesh.numberofvertices,1],'NaN',1);
     36                                checkfield(md,'fieldname','smb.mass_balance','size',[md.mesh.numberofvertices,1],'NaN',1,'Inf',1);
    3737                        }
    3838                        checkfield(md,'fieldname','smb.requested_outputs','stringrow',1);
  • issm/trunk-jpl/src/m/classes/balancethickness.js

    r19860 r19901  
    2929
    3030                        checkfield(md,'fieldname','balancethickness.spcthickness');
    31                         checkfield(md,'fieldname','balancethickness.thickening_rate','size',[md.mesh.numberofvertices ,1],'NaN',1);
     31                        checkfield(md,'fieldname','balancethickness.thickening_rate','size',[md.mesh.numberofvertices ,1],'NaN',1,'Inf',1);
    3232                        checkfield(md,'fieldname','balancethickness.stabilization','size',[1, 1],'values',[0, 1, 2 ,3]);
    33                         //checkfield(md,'fieldname','balancethickness.omega','size',[md.mesh.numberofvertices ,1],'NaN',1,'>=',0);
     33                        //checkfield(md,'fieldname','balancethickness.omega','size',[md.mesh.numberofvertices ,1],'NaN',1,'Inf',1,'>=',0);
    3434                } //}}}
    3535                this.marshall=function(md,fid) { //{{{
  • issm/trunk-jpl/src/m/classes/basalforcings.js

    r19860 r19901  
    3737                        if(ArrayAnyEqual(ArrayIsMember(MasstransportAnalysisEnum(),analyses),1)){
    3838                                if (!(solution==TransientSolutionEnum() & md.trans.ismasstransport==0)){
    39                                         checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'timeseries',1);
    40                                         checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'timeseries',1);
     39                                        checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1);
     40                                        checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'Inf',1,'timeseries',1);
    4141                                }
    4242                        }
    4343
    4444                        if(ArrayAnyEqual(ArrayIsMember(BalancethicknessAnalysisEnum(),analyses),1)){
    45                                 checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    46                                 checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     45                                checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     46                                checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    4747                        }
    4848                        if(ArrayAnyEqual(ArrayIsMember(ThermalAnalysisEnum(),analyses),1)){
    4949                                if (!(solution==TransientSolutionEnum() & md.trans.isthermal==0)){
    50                                         checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'timeseries',1);
    51                                         checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'timeseries',1);
    52                                         checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,'timeseries',1,'>=',0);
     50                                        checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1);
     51                                        checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'Inf',1,'timeseries',1);
     52                                        checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,'Inf',1,'timeseries',1,'>=',0);
    5353                                }
    5454                        }
  • issm/trunk-jpl/src/m/classes/calving.js

    r19860 r19901  
    3030                checkfield(md,'fieldname','calving.spclevelset','timeseries',1);
    3131                checkfield(md,'fieldname','calving.stabilization','values',[0,1,2]);
    32                 checkfield(md,'fieldname','calving.calvingrate(1:md.mesh.numberofvertices,:)','>=',0,'timeseries',1,'NaN',1);
    33                 checkfield(md,'fieldname','calving.meltingrate(1:md.mesh.numberofvertices,:)','>=',0,'timeseries',1,'NaN',1);
     32                checkfield(md,'fieldname','calving.calvingrate(1:md.mesh.numberofvertices,:)','>=',0,'timeseries',1,'NaN',1,'Inf',1);
     33                checkfield(md,'fieldname','calving.meltingrate(1:md.mesh.numberofvertices,:)','>=',0,'timeseries',1,'NaN',1,'Inf',1);
    3434        } //}}}
    3535                this.marshall=function(md,fid) { //{{{
  • issm/trunk-jpl/src/m/classes/friction.js

    r19860 r19901  
    2424                                return;
    2525                        }
    26                         md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1);
    27                         md = checkfield(md,'fieldname','friction.q','NaN',1,'size',[md.mesh.numberofelements ,1]);
    28                         md = checkfield(md,'fieldname','friction.p','NaN',1,'size',[md.mesh.numberofelements ,1]);
     26                        md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1,'Inf',1);
     27                        md = checkfield(md,'fieldname','friction.q','NaN',1,'Inf',1,'size',[md.mesh.numberofelements ,1]);
     28                        md = checkfield(md,'fieldname','friction.p','NaN',1,'Inf',1,'size',[md.mesh.numberofelements ,1]);
    2929
    3030                } // }}}
  • issm/trunk-jpl/src/m/classes/geometry.js

    r19860 r19901  
    2222
    2323                        if ((solution==TransientSolutionEnum() & md.trans.isgia) | (solution==GiaSolutionEnum())){
    24                                 checkfield(md,'fieldname','geometry.thickness','timeseries',1,'NaN',1,'>=',0);
     24                                checkfield(md,'fieldname','geometry.thickness','timeseries',1,'NaN',1,'Inf',1,'>=',0);
    2525                        }
    2626                        else{
    27                                 checkfield(md,'fieldname','geometry.surface'  ,'NaN',1,'size',[md.mesh.numberofvertices, 1]);
    28                                 checkfield(md,'fieldname','geometry.base'      ,'NaN',1,'size',[md.mesh.numberofvertices, 1]);
    29                                 checkfield(md,'fieldname','geometry.thickness','NaN',1,'size',[md.mesh.numberofvertices, 1],'>',0);
     27                                checkfield(md,'fieldname','geometry.surface'  ,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     28                                checkfield(md,'fieldname','geometry.base'      ,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     29                                checkfield(md,'fieldname','geometry.thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1],'>',0);
    3030                                for(var i=0;i<md.mesh.numberofvertices;i++){
    3131                                        if (Math.abs(md.geometry.thickness.thickness-md.geometry.surface+md.geometry.base)>Math.pow(10,9)){
     
    3535                                }
    3636                                if (solution==TransientSolutionEnum() & md.trans.isgroundingline){
    37                                         checkfield(md,'fieldname','geometry.bed','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     37                                        checkfield(md,'fieldname','geometry.bed','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    3838                                }
    3939                        }
  • issm/trunk-jpl/src/m/classes/gia.js

    r19860 r19901  
    2727                if(!ArrayAnyEqual(ArrayIsMember(GiaAnalysisEnum(),analyses),1))return;
    2828
    29                 checkfield(md,'fieldname','gia.mantle_viscosity','NaN',1,'size',[md.mesh.numberofvertices,1],'>',0);
    30                 checkfield(md,'fieldname','gia.lithosphere_thickness','NaN',1,'size',[md.mesh.numberofvertices,1],'>',0);
     29                checkfield(md,'fieldname','gia.mantle_viscosity','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1],'>',0);
     30                checkfield(md,'fieldname','gia.lithosphere_thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1],'>',0);
    3131                checkfield(md,'fieldname','gia.cross_section_shape','numel',[1],'values',[1,2]);
    3232
  • issm/trunk-jpl/src/m/classes/initialization.js

    r19860 r19901  
    2727                        if(ArrayAnyEqual(ArrayIsMember(StressbalanceAnalysisEnum(),analyses),1)){
    2828                                if (!(isNaN(md.initialization.vx) | isNaN(md.initialization.vy))){
    29                                         checkfield(md,'fieldname','initialization.vx','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    30                                         checkfield(md,'fieldname','initialization.vy','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     29                                        checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     30                                        checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    3131                                }
    3232                        }
    3333                        if(ArrayAnyEqual(ArrayIsMember(MasstransportAnalysisEnum(),analyses),1)){
    34                                 checkfield(md,'fieldname','initialization.vx','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    35                                 checkfield(md,'fieldname','initialization.vy','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     34                                checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     35                                checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    3636                        }
    3737                        if(ArrayAnyEqual(ArrayIsMember(BalancethicknessSolutionEnum(),analyses),1) & (solution==BalancethicknessSolutionEnum())){
    38                                 checkfield(md,'fieldname','initialization.vx','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    39                                 checkfield(md,'fieldname','initialization.vy','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     38                                checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     39                                checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    4040                                //Triangle with zero velocity
    4141                                for(var i=0;i<md.mesh.numberofelements;i++){
     
    5050                        }
    5151                        if(ArrayAnyEqual(ArrayIsMember(ThermalAnalysisEnum(),analyses),1)){
    52                                 checkfield(md,'fieldname','initialization.vx','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    53                                 checkfield(md,'fieldname','initialization.vy','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     52                                checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     53                                checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    5454                                if (md.mesh.dimension() == 3){
    55                                         checkfield(md,'fieldname','initialization.vz','NaN',1,'size',[md.mesh.numberofvertices ,1]);
     55                                        checkfield(md,'fieldname','initialization.vz','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices ,1]);
    5656                                }
    57                                 checkfield(md,'fieldname','initialization.pressure','NaN',1,'size',[md.mesh.numberofvertices ,1]);
    58                                 checkfield(md,'fieldname','initialization.temperature','NaN',1,'size',[md.mesh.numberofvertices ,1]);
     57                                checkfield(md,'fieldname','initialization.pressure','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices ,1]);
     58                                checkfield(md,'fieldname','initialization.temperature','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices ,1]);
    5959                        }
    6060                        if( ArrayAnyEqual(ArrayIsMember(EnthalpyAnalysisEnum(),analyses),1) & md.thermal.isenthalpy){
     
    6464                        if(ArrayAnyEqual(ArrayIsMember(HydrologyShreveAnalysisEnum(),analyses),1)){
    6565                                if (md.hydrology.type() == 'hydrologyshreve'){
    66                                         checkfield(md,'fieldname','initialization.watercolumn','NaN',1,'size',[md.mesh.numberofvertices ,1]);
     66                                        checkfield(md,'fieldname','initialization.watercolumn','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices ,1]);
    6767                                }
    6868                        }
    6969                        if(ArrayAnyEqual(ArrayIsMember(HydrologyDCInefficientAnalysisEnum(),analyses),1)){
    7070                                if (md.hydrology.type() == 'hydrologydc'){
    71                                         checkfield(md,'fieldname','initialization.sediment_head','NaN',1,'size',[md.mesh.numberofvertices, 1]);
     71                                        checkfield(md,'fieldname','initialization.sediment_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
    7272                                }
    7373                        }
     
    7575                                if (md.hydrology.type() == 'hydrologydc'){
    7676                                        if (md.hydrology.isefficientlayer==1){
    77                                                 checkfield(md,'fieldname','initialization.epl_head','NaN',1,'size',[md.mesh.numberofvertices ,1]);
    78                                                 checkfield(md,'fieldname','initialization.epl_thickness','NaN',1,'size',[md.mesh.numberofvertices ,1]);
     77                                                checkfield(md,'fieldname','initialization.epl_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices ,1]);
     78                                                checkfield(md,'fieldname','initialization.epl_thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices ,1]);
    7979                                        }
    8080                                }
  • issm/trunk-jpl/src/m/classes/inversion.js

    r19860 r19901  
    106106
    107107                        if (solution==BalancethicknessSolutionEnum()){
    108                                 checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices ,1],'NaN',1);
     108                                checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices ,1],'NaN',1,'Inf',1);
    109109                        }
    110110                        else if (solution==BalancethicknessSoftSolutionEnum()){
    111                                 checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices, 1],'NaN',1);
     111                                checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices, 1],'NaN',1,'Inf',1);
    112112                        }
    113113                        else{
    114                                 checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices ,1],'NaN',1);
    115                                 checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices ,1],'NaN',1);
     114                                checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices ,1],'NaN',1,'Inf',1);
     115                                checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices ,1],'NaN',1,'Inf',1);
    116116                        }
    117117                } // }}}
  • issm/trunk-jpl/src/m/classes/matice.js

    r19860 r19901  
    8686                        checkfield(md,'fieldname','materials.rho_freshwater','>',0);
    8787                        checkfield(md,'fieldname','materials.mu_water','>',0);
    88                         checkfield(md,'fieldname','materials.rheology_B','>',0,'timeseries',1,'NaN',1);
     88                        checkfield(md,'fieldname','materials.rheology_B','>',0,'timeseries',1,'NaN',1,'Inf',1);
    8989                        checkfield(md,'fieldname','materials.rheology_n','>',0,'size',[md.mesh.numberofelements,1]);
    9090                        checkfield(md,'fieldname','materials.rheology_law','values',['None','Cuffey','Paterson','Arrhenius','LliboutryDuval']);
  • issm/trunk-jpl/src/m/classes/mesh2d.js

    r19860 r19901  
    5959                this.checkconsistency = function(md,solution,analyses){ //{{{
    6060
    61                         checkfield(md,'fieldname','mesh.x','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    62                         checkfield(md,'fieldname','mesh.y','NaN',1,'size',[md.mesh.numberofvertices, 1]);
    63                         checkfield(md,'fieldname','mesh.elements','NaN',1,'>',0,'values',NewArrayFillIncrement(md.mesh.numberofvertices,1,1));
     61                        checkfield(md,'fieldname','mesh.x','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     62                        checkfield(md,'fieldname','mesh.y','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices, 1]);
     63                        checkfield(md,'fieldname','mesh.elements','NaN',1,'Inf',1,'>',0,'values',NewArrayFillIncrement(md.mesh.numberofvertices,1,1));
    6464                        checkfield(md,'fieldname','mesh.elements','size',[md.mesh.numberofelements, 3]);
    6565                        if(ArrayAnyEqual(ArrayIsMember(NewArrayFillIncrement(md.mesh.numberofvertices,1,1),ArraySort(ArrayUnique(MatrixToList(md.mesh.elements)))),0)){
     
    6969                        checkfield(md,'fieldname','mesh.numberofvertices','>',0);
    7070                        checkfield(md,'fieldname','mesh.average_vertex_connectivity','>=',9,'message',"'mesh.average_vertex_connectivity' should be at least 9 in 2d");
    71                         checkfield(md,'fieldname','mesh.segments','NaN',1,'>',0,'size',[NaN, 3]);
     71                        checkfield(md,'fieldname','mesh.segments','NaN',1,'Inf',1,'>',0,'size',[NaN, 3]);
    7272
    7373                        switch(solution){
  • issm/trunk-jpl/src/m/classes/stressbalance.js

    r19860 r19901  
    8484                        checkfield(md,'fieldname','stressbalance.spcvy','timeseries',1);
    8585                        checkfield(md,'fieldname','stressbalance.spcvz','timeseries',1);
    86                         checkfield(md,'fieldname','stressbalance.restol','size',[1, 1],'>',0,'NaN',1);
     86                        checkfield(md,'fieldname','stressbalance.restol','size',[1, 1],'>',0,'NaN',1,'Inf',1);
    8787                        checkfield(md,'fieldname','stressbalance.reltol','size',[1, 1]);
    8888                        checkfield(md,'fieldname','stressbalance.abstol','size',[1, 1]);
    8989                        checkfield(md,'fieldname','stressbalance.isnewton','numel',[1],'values',[0, 1, 2]);
    90                         checkfield(md,'fieldname','stressbalance.FSreconditioning','size',[1, 1],'NaN',1);
    91                         checkfield(md,'fieldname','stressbalance.viscosity_overshoot','size',[1, 1],'NaN',1);
     90                        checkfield(md,'fieldname','stressbalance.FSreconditioning','size',[1, 1],'NaN',1,'Inf',1);
     91                        checkfield(md,'fieldname','stressbalance.viscosity_overshoot','size',[1, 1],'NaN',1,'Inf',1);
    9292                        checkfield(md,'fieldname','stressbalance.maxiter','size',[1, 1],'>=',1);
    9393                        checkfield(md,'fieldname','stressbalance.referential','size',[md.mesh.numberofvertices, 6]);
  • issm/trunk-jpl/src/m/classes/timestepping.js

    r19860 r19901  
    3939                this.checkconsistency = function(md,solution,analyses) { //{{{
    4040                       
    41                         checkfield(md,'fieldname','timestepping.start_time','numel',[1],'NaN',1);
    42                         checkfield(md,'fieldname','timestepping.final_time','numel',[1],'NaN',1);
    43                         checkfield(md,'fieldname','timestepping.time_step','numel',[1],'>=',0,'NaN',1);
     41                        checkfield(md,'fieldname','timestepping.start_time','numel',[1],'NaN',1,'Inf',1);
     42                        checkfield(md,'fieldname','timestepping.final_time','numel',[1],'NaN',1,'Inf',1);
     43                        checkfield(md,'fieldname','timestepping.time_step','numel',[1],'>=',0,'NaN',1,'Inf',1);
    4444                        checkfield(md,'fieldname','timestepping.time_adapt','numel',[1],'values',[0,1]);
    4545                        checkfield(md,'fieldname','timestepping.cfl_coefficient','numel',[1],'>',0,'<=',1);
Note: See TracChangeset for help on using the changeset viewer.