Changeset 4256


Ignore:
Timestamp:
06/28/10 10:02:32 (15 years ago)
Author:
Mathieu Morlighem
Message:

fixed nighlty run output for diagnostics

Location:
issm/trunk/src/m/utils/Nightly
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/utils/Nightly/runme.m

    r4254 r4256  
    175175
    176176                %compute fields to be checked
    177                 fields=testsgetfields(md,sequence);
     177                [field_names field_values]=testsgetfields(md,sequence);
    178178
    179179                %get Archive name
     
    183183                if strcmpi(procedure,'update'),
    184184
    185                         for k=1:length(fields),
    186                                 field=fields{k};
     185                        for k=1:length(field_names),
     186                                field=field_values{k};
    187187                                eval([ archive_name '_field' num2str(k) ' = ' field  ';']);
    188188                        end
     
    196196                        eval(['load ' archive_name ]);
    197197
    198                         for k=1:length(fields),
     198                        for k=1:length(field_names),
    199199
    200200                                %Get field and tolerance
    201                                 field=fields{k};
    202                                 tolerance=testsgettolerance(md,sequence,field);
     201                                field=field_values{k};
     202                                fieldname=field_names{k};
     203                                tolerance=testsgettolerance(md,sequence,field_names);
    203204
    204205                                %compare to archive
    205                                 eval(['Archive=' archive_name '_field' num2str(k) ';']);
    206                                 eval(['error_diff=full(max(abs(Archive-' field '))/(max(abs(Archive))+eps));']);
     206                                eval(['archive=' archive_name '_field' num2str(k) ';']);
     207                                error_diff=full(max(abs(archive-field))/(max(abs(archive))+eps));
    207208
    208209                                %disp test result
    209210                                if (error_diff>tolerance);
    210211                                        disp(sprintf(['\nERROR   difference: %-7.2g > %7.2g test: %s analysis_type: %s sub_analysis_type: %s qmu: %i control: %i control_fit: %s parallel: %i field: %s\n'],...
    211                                                 error_diff,tolerance,testname,EnumAsString(analysis_type),EnumAsString(sub_analysis_type),qmu,control,control_fit,parallel,field));
     212                                                error_diff,tolerance,testname,EnumAsString(analysis_type),EnumAsString(sub_analysis_type),qmu,control,control_fit,parallel,fieldname));
    212213                                else
    213214                                        disp(sprintf(['\nSUCCESS difference: %-7.2g < %7.2g test: %s analysis_type: %s sub_analysis_type: %s qmu: %i control: %i control_fit: %s parallel: %i field: %s\n'],...
    214                                                 error_diff,tolerance,testname,EnumAsString(analysis_type),EnumAsString(sub_analysis_type),qmu,control,control_fit,parallel,field));
     215                                                error_diff,tolerance,testname,EnumAsString(analysis_type),EnumAsString(sub_analysis_type),qmu,control,control_fit,parallel,fieldname));
    215216                                end
    216217                        end
  • issm/trunk/src/m/utils/Nightly/testsgetfields.m

    r4254 r4256  
    66%
    77%   Usage:
    8 %      fields=testsgetfields(md,analysis)
     8%      [field_names field_values]=testsgetfields(md,analysis)
    99%
    1010%   Example:
    11 %      fields=testsgetfields(md,'DiagnosticSolution')
     11%      [field_names field_values]=testsgetfields(md,'DiagnosticSolution')
    1212%
    1313%   See also: TESTSGETANALYSIS, TESTGETPACKAGE
     
    3131                else
    3232                        field_names={'Vel'};
    33                         vx=zeros(md.numberofgrids,1);
    34                         vx(md.results.DiagnosticAnalysis.Vx.index)=md.results.DiagnosticAnalysis.Vx.value;
    35                         vy=zeros(md.numberofgrids,1);
    36                         vy(md.results.DiagnosticAnalysis.Vy.index)=md.results.DiagnosticAnalysis.Vy.value;
    37                         vel=sqrt(vx.^2+vy.^2);
     33                        vel=zeros(md.numberofgrids,1);
     34                        vel(md.results.DiagnosticAnalysis.Vel.index)=md.results.DiagnosticAnalysis.Vel.value;
    3835                        field_values={vel};
    3936                end
    4037        end
    41         md.results.DiagnosticAnalysis.Vx.value
    4238
    4339elseif (analysis_type==ThermalSolutionEnum),
     
    6763        fields={'BalancedthicknessSolution.thickness'};
    6864
    69 elseif (analysis_type==SlopecomputeSolutionEnum),
    70         fields={'SlopecomputeSolution.slopex','SlopecomputeSolution.slopey'};
     65elseif (analysis_type==SlopeSolutionEnum),
     66        fields={'SlopeSolution.slopex','SlopeSolution.slopey'};
    7167
    7268else
  • issm/trunk/src/m/utils/Nightly/testsgettolerance.m

    r3994 r4256  
    2222
    2323else
    24         if (analysis_type==BalancedthicknessAnalysisEnum),
     24        if (analysis_type==BalancedthicknessSolutionEnum),
    2525                tolerance=10^-14;
    2626
    27         elseif (analysis_type==SlopecomputeAnalysisEnum),
     27        elseif (analysis_type==SlopeSolutionEnum),
    2828                tolerance=10^-14;
    2929
    30         elseif (analysis_type==PrognosticAnalysisEnum),
     30        elseif (analysis_type==PrognosticSolutionEnum),
    3131                tolerance=10^-14;
    3232
    33         elseif (analysis_type==Prognostic2AnalysisEnum),
     33        elseif (analysis_type==Prognostic2SolutionEnum),
    3434                tolerance=10^-14;
    3535
    36         elseif (analysis_type==TransientAnalysisEnum),
    37                 if (md.dim==2),
    38                         tolerance=10^-11;
    39                 else
    40                         if md.isstokes,
    41                                 tolerance=10^-4;
    42                         elseif any(md.gridonpattyn),
    43                                 tolerance=10^-6;
    44                         else,
    45                                 tolerance=10^-12;
    46                         end
     36        elseif (analysis_type==Transient2DSolutionEnum),
     37                tolerance=10^-11;
     38
     39        elseif (analysis_type==Transient3DSolutionEnum),
     40                if md.isstokes,
     41                        tolerance=10^-4;
     42                elseif any(md.gridonpattyn),
     43                        tolerance=10^-6;
     44                else,
     45                        tolerance=10^-12;
    4746                end
    4847
    49         elseif (analysis_type==DiagnosticAnalysisEnum),
     48        elseif (analysis_type==DiagnosticSolutionEnum),
    5049                if md.isstokes,
    5150                        tolerance=10^-4;
     
    5857                end
    5958
    60         elseif (analysis_type==ThermalAnalysisEnum),
     59        elseif (analysis_type==ThermalSolutionEnum),
    6160                if strncmpi(fliplr(field),fliplr('melting'),7),
    6261                        tolerance=10^-6;
     
    6564                end
    6665
    67         elseif (analysis_type==SteadystateAnalysisEnum),
     66        elseif (analysis_type==SteadystateSolutionEnum),
    6867                        if md.isstokes | md.control_analysis,
    6968                                tolerance=5*10^-4;
Note: See TracChangeset for help on using the changeset viewer.