Changeset 674


Ignore:
Timestamp:
06/01/09 14:48:45 (16 years ago)
Author:
Mathieu Morlighem
Message:

results are now in md.results

Location:
issm/trunk/src/m
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/classes/@model/model.m

    r643 r674  
    121121        md.surface=NaN;
    122122        md.thickness=NaN;
    123         md.new_thickness=NaN;
    124123        md.bed=NaN;
    125124
     
    168167        md.ndt=0;
    169168        md.artificial_diffusivity=0;
    170         md.transient_results=NaN;
    171         md.thermaltransient_results=NaN;
    172169        md.timestepping=0;
    173170        md.deltaH=0;
     
    279276
    280277        %results
    281         md.results=NaN;
     278        md.results=struct();
    282279
    283280        %Ice solver string
  • issm/trunk/src/m/solutions/cielo/loadresults.m

    r485 r674  
    1515
    1616if dim==2,
    17        
    18         md.vx=u_g(1:2:end)*md.yts;
    19         md.vy=u_g(2:2:end)*md.yts;
    20         md.vel=sqrt(md.vx.^2+md.vy.^2);
    21         md.pressure=p_g;
     17        results.step=1;
     18        results.time=1;
     19        results.vx=u_g(1:2:end)*md.yts;
     20        results.vy=u_g(2:2:end)*md.yts;
     21        results.vel=sqrt(results.vx.^2+results.vy.^2);
     22        results.pressure=p_g;
     23        md.results.diagnostic=results;
    2224
    2325else
    2426       
     27        results.step=1;
     28        results.time=1;
    2529        if isstokes,
    26                 md.vx=u_g(1:4:end)*md.yts;
    27                 md.vy=u_g(2:4:end)*md.yts;
    28                 md.vz=u_g(3:4:end)*md.yts;
    29                 md.pressure=p_g;
     30                results.vx=u_g(1:4:end)*md.yts;
     31                results.vy=u_g(2:4:end)*md.yts;
     32                results.vz=u_g(3:4:end)*md.yts;
     33                results.pressure=p_g;
    3034        else
    31                 md.vx=u_g(1:3:end)*md.yts;
    32                 md.vy=u_g(2:3:end)*md.yts;
    33                 md.vz=u_g(3:3:end)*md.yts;
    34                 md.pressure=p_g;
     35                results.vx=u_g(1:3:end)*md.yts;
     36                results.vy=u_g(2:3:end)*md.yts;
     37                results.vz=u_g(3:3:end)*md.yts;
     38                results.pressure=p_g;
    3539        end
    36         md.vel=sqrt(md.vx.^2+md.vy.^2+md.vz.^2);
     40        results.vel=sqrt(results.vx.^2+results.vy.^2+results.vz.^2);
     41        md.results.diagnostic=results;
    3742end
  • issm/trunk/src/m/solutions/cielo/prognostic.m

    r603 r674  
    3434       
    3535        displaystring(md.debug,'\n%s',['load results...']);
    36         md.new_thickness=h_g;
     36        md.results.prognostic.step=1;
     37        md.results.prognostic.time=0;
     38        md.results.prognostic.thickness=h_g;
    3739
    3840        %stop timing
  • issm/trunk/src/m/solutions/cielo/thermal.m

    r553 r674  
    3636               
    3737                displaystring(md.debug,'\n%s',['load results...']);
    38                 md.temperature=t_g;
    39                 md.melting=m_g*md.yts; %from m/s to m/a
     38                md.results.thermal.step=1;
     39                md.results.thermal.time=0;
     40                md.results.thermal.temperature=t_g;
     41                md.results.thermal.melting=m_g*md.yts; %from m/s to m/a
    4042
    4143        else
     
    7375                        solution(n).melting=soln(n).m_g*md.yts; %in m/year
    7476                        solution(n).time=soln(n).time/md.yts;         %in years
     77                        solution(n).step=n;
    7578                end
    76                 md.thermaltransient_results=solution;
     79                md.results.thermal=solution;
    7780        end
    7881
  • issm/trunk/src/m/solutions/ice/Loadresults.m

    r1 r674  
    2727        end
    2828
    29         md.vx=u_g(indx)*md.yts;
    30         md.vy=u_g(indy)*md.yts;
    31         md.vel=sqrt(md.vx.^2+md.vy.^2);
    32         md.pressure=u_g(indp);
     29        md.results.diagnostic.step=1;
     30        md.results.diagnostic.time=0;
     31        md.results.diagnostic.vx=u_g(indx)*md.yts;
     32        md.results.diagnostic.vy=u_g(indy)*md.yts;
     33        md.results.diagnostic.vel=sqrt(md.vx.^2+md.vy.^2);
     34        md.results.diagnostic.pressure=u_g(indp);
    3335
    3436else
     37
    3538        m_dv=fem.m_dv;
    3639        indx=1:6:m_dv.gridset.gsize;
     
    4346        indp=indp(m_dv.tpart);
    4447
    45         md.vx=u_g(indx)*md.yts;
    46         md.vy=u_g(indy)*md.yts;
    47         md.vz=u_g(indz)*md.yts;
    48         md.vel=sqrt(md.vx.^2+md.vy.^2+md.vz.^2);
    49         md.pressure=u_g(indp);
     48        md.results.diagnostic.step=1;
     49        md.results.diagnostic.time=0;
     50        md.results.diagnostic.vx=u_g(indx)*md.yts;
     51        md.results.diagnostic.vy=u_g(indy)*md.yts;
     52        md.results.diagnostic.vz=u_g(indz)*md.yts;
     53        md.results.diagnostic.vel=sqrt(md.vx.^2+md.vy.^2+md.vz.^2);
     54        md.results.diagnostic.pressure=u_g(indp);
    5055end
  • issm/trunk/src/m/solutions/ice/prognostic.m

    r34 r674  
    5959%project collapsed thickness onto 3d mesh
    6060indx=1:6:m.gridset.gsize; indx=indx(m.tpart);
     61md.results.prognostic.step=1;
     62md.results.prognostic.time=0;
    6163if strcmpi(md.type,'3d'),
    62         md.new_thickness=project3d(md,project2d(md,h_g(indx),1),'node');
     64        md.results.prognostic.thickness=project3d(md,project2d(md,h_g(indx),1),'node');
    6365else
    64         md.new_thickness=h_g(indx);
     66        md.results.prognostic.thickness=h_g(indx);
    6567end
    6668
  • issm/trunk/src/m/solutions/ice/thermal.m

    r526 r674  
    4545        indx=1:6:gridset.gsize;
    4646        indx=indx(m_t.tpart);
    47         md.temperature=t_g(indx);
    48         md.melting=melting_g(indx)*md.yts; %from m/s to m/a
     47        md.results.thermal.step=1;
     48        md.results.thermal.time=0;
     49        md.results.thermal.temperature=t_g(indx);
     50        md.results.thermal.melting=melting_g(indx); %from m/s to m/a
    4951else
    5052
     
    8688
    8789        for n=1:nsteps+1,
     90                solution(n).step=n;
    8891                solution(n).temperature=soln(n).t_g(indx);
    8992                solution(n).melting=soln(n).melting_g(indx)*md.yts; %in m/a
    9093                solution(n).time=soln(n).time/md.yts; %in year
    9194        end
    92         md.thermaltransient_results=solution;
     95        md.results.thermal=solution;
    9396end
    9497
  • issm/trunk/src/m/solutions/ice/transient2d.m

    r34 r674  
    108108        solution2(i).bed=solution(i).bed(indx);
    109109        solution2(i).time=solution(i).time/md.yts;
     110        solution2(i).step=i;
    110111end
    111 md.transient_results=solution2;
     112md.results.transient=solution2;
  • issm/trunk/src/m/solutions/ice/transient3d.m

    r34 r674  
    162162        solution2(i).bed=solution(i).bed(indx);
    163163        solution2(i).time=solution(i).time/md.yts;
     164        solution2(i).step=i;
    164165end
    165 
    166 md.transient_results=solution2;
     166md.results.transient=solution2;
  • issm/trunk/src/m/solutions/macayeal/control.m

    r428 r674  
    123123end
    124124
    125 
    126 
    127125%check that the model is not a pure ice shelf (no friction on ice shelves)
    128126if strcmp(md.control_type,'drag') & (length(find(drag_coeff))==0),
     
    168166       direction=direction/sqrt(direction'*direction);
    169167
    170 
    171168       % rough orthagonalization
    172169       direction=direction-(direction'*old_direction)*old_direction;
     
    242239    end
    243240
    244     %Load results onto md:
    245     md.cont_J=J;
    246          md.cont_parameter=B;
    247          md.cont_vx=u;
    248          md.cont_vy=v;
    249          md.cont_vel=sqrt(u.^2+v.^2);
     241         %Load results onto md:
     242         md.results.control.step=1;
     243         md.results.control.time=0;
     244    md.results.control.J=J;
     245         md.results.control.parameter=B;
     246         md.results.control.vx=u;
     247         md.results.control.vy=v;
     248         md.results.control.vel=sqrt(u.^2+v.^2);
    250249
    251250elseif strcmp(md.control_type,'drag'),
  • issm/trunk/src/m/solutions/macayeal/diagnostic.m

    r436 r674  
    468468
    469469%Load results onto md:
    470 md.vx=u*yts;
    471 md.vy=v*yts;
    472 md.vel=sqrt(md.vx.^2+md.vy.^2);
     470md.results.diagnostic.step=1;
     471md.results.diagnostic.time=0;
     472md.results.diagnostic.vx=u*yts;
     473md.results.diagnostic.vy=v*yts;
     474md.results.diagnostic.vel=sqrt(u.^2+v.^2)*yts;
    473475
    474476%stop timing
  • issm/trunk/src/m/utils/Nightly/testsgetfields.m

    r521 r674  
    1515if strcmpi(string,'diagnostic'),
    1616        if strcmpi(mdtype,'3d')
    17                 fields={'vy','vz'};
     17                fields={'diagnostic.vy','diagnostic.vz'};
    1818        else
    19                 fields={'vel'};
     19                fields={'diagnostic.vel'};
    2020        end
    2121
    2222elseif strcmpi(string,'thermalsteady'),
    23         fields={'temperature','melting'};
     23        fields={'thermal.temperature','thermal.melting'};
    2424
    2525elseif strcmpi(string,'thermaltransient'),
    26         fields={'thermaltransient_results(end).temperature','thermaltransient_results(end).melting'};
     26        fields={'thermal(end).temperature','thermal(end).melting'};
    2727
    2828elseif strcmpi(string,'prognostic'),
    29         fields={'new_thickness'};
     29        fields={'prognostic.thickness'};
    3030
    3131elseif strcmpi(string,'transient'),
    3232        if strcmpi(mdtype,'3d')
    33                 fields={'transient_results(end).vy','transient_results(end).vz','transient_results(end).temperature','transient_results(end).melting','transient_results(end).thickness'};
     33                fields={'transient(end).vy','transient(end).vz','transient(end).temperature','transient(end).melting','transient(end).thickness'};
    3434        else
    35                 fields={'transient_results(end).vel','transient_results(end).thickness'};
     35                fields={'transient(end).vel','transient(end).thickness'};
    3636        end
    3737
    3838elseif strcmpi(string,'control'),
    39         fields={'cont_vel','cont_J','cont_parameter'};
     39        fields={'control.vel','control.J','control.parameter'};
    4040
    4141else
Note: See TracChangeset for help on using the changeset viewer.