Changeset 16160


Ignore:
Timestamp:
09/17/13 16:38:06 (12 years ago)
Author:
Eric.Larour
Message:

NEW: starting to implement a damage class

Location:
issm/trunk-jpl/src/m/classes
Files:
1 added
2 edited

Legend:

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

    r16157 r16160  
    163163                        fielddisplay(obj,'damage_D','damage tensor (scalar)');
    164164                        fielddisplay(obj,'damage_law','damage law (string) from {''initial''}');
    165                         if strcmpi(obj.damage_law),
     165                        if strcmpi(obj.damage_law,'initial'),
    166166                                fielddisplay(obj,'damage_c1','damage parameter 1');
    167167                                fielddisplay(obj,'damage_c2','damage parameter 2');
  • issm/trunk-jpl/src/m/classes/model/model.m

    r16026 r16160  
    1616                basalforcings    = 0;
    1717                materials        = 0;
     18                damage           = 0;
    1819                friction         = 0;
    1920                flowequation     = 0;
     
    187188                        md.materials.rheology_B=DepthAverage(md,md.materials.rheology_B);
    188189                        md.materials.rheology_n=project2d(md,md.materials.rheology_n,1);
    189                         if isa(md.materials,'matdamageice')
    190                                 md.materials.rheology_Z=DepthAverage(md,md.materials.rheology_Z);
    191                         end
     190                       
     191                        %damage:
     192                        md.damage.D=DepthAverage(md,md.damage.D);
    192193
    193194                        %special for thermal modeling:
     
    718719                        md.materials.rheology_B=project3d(md,'vector',md.materials.rheology_B,'type','node');
    719720                        md.materials.rheology_n=project3d(md,'vector',md.materials.rheology_n,'type','element');
    720                         if isa(md.materials,'matdamageice')
    721                                 md.materials.rheology_Z=project3d(md,'vector',md.materials.rheology_Z,'type','node');
    722                         end
     721                               
     722                        %damage
     723                        md.damage.D=project3d(md,'vector',md.damage.D,'type','node');
    723724
    724725                        %parameters
     
    831832                        if isfield(structmd,'rheology_B'), md.materials.rheology_B=structmd.rheology_B; end
    832833                        if isfield(structmd,'rheology_n'), md.materials.rheology_n=structmd.rheology_n; end
     834                        if isfield(structmd,'rheology_Z'), md.damage.D=(1-structmd.rheology_Z); end
    833835                        if isfield(structmd,'spcthickness'), md.balancethickness.spcthickness=structmd.spcthickness; end
    834836                        if isfield(structmd,'artificial_diffusivity'), md.balancethickness.stabilization=structmd.artificial_diffusivity; end
     
    10471049                        md.groundingline    = groundingline();
    10481050                        md.materials        = matice();
     1051                        md.damage           = damage();
    10491052                        md.flowequation     = flowequation();
    10501053                        md.debug            = debug();
     
    10791082                        disp(sprintf('%19s: %-22s -- %s','basalforcings'   ,['[1x1 ' class(obj.basalforcings) ']'],'bed forcings'));
    10801083                        disp(sprintf('%19s: %-22s -- %s','materials'       ,['[1x1 ' class(obj.materials) ']'],'material properties'));
     1084                        disp(sprintf('%19s: %-22s -- %s','damage'          ,['[1x1 ' class(obj.damage) ']'],'damage propagation laws'));
    10811085                        disp(sprintf('%19s: %-22s -- %s','friction'        ,['[1x1 ' class(obj.friction) ']'],'basal friction/drag properties'));
    10821086                        disp(sprintf('%19s: %-22s -- %s','flowequation'    ,['[1x1 ' class(obj.flowequation) ']'],'flow equations'));
Note: See TracChangeset for help on using the changeset viewer.