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

Added some doc and some checks

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/classes/public/bamg.m

    r2977 r3022  
    22%BAMG - mesh generation
    33%
    4 %   Usage:
    5 %      md=bamg(md,varargin);
     4%   Available options (for more details see ISSM website http://issm.jpl.nasa.gov/):
     5%
     6%   - domain : followed by an ARGUS file that prescribes the domain outline (rifts and holes)
     7%   - hmin   : minimum edge length (default is 10^-100)
     8%   - hmax   : maximum esge length (default is 10^100)
     9%   - hVertices : imposed edge length for each vertex (geometry or mesh)
     10%
     11%   - anisomax    : maximum ration between the smallest and largest edges (default is 10^30)
     12%   - coef        : coefficient applied to the metric (2-> twice as many elements, default is 1)
     13%   - cutoff      : scalar used to compute the metric when metric type 2 or 3 are applied
     14%   - err         : error used to generate the metric from a field
     15%   - errg        : geometrical error (default is 0.1)
     16%   - field       : field of the model that will be used to compute the metric
     17%                   to apply several fields, use one column per field
     18%   - gradation   : maximum ration between two adjacent edges
     19%   - Hessiantype : 0 -> use double P2 projection (default)
     20%                   1 -> use Green formula
     21%   - KeepVertices: try to keep initial vertices when adaptation is done on an existing mesh (default 1)
     22%   - MaximalAngleOfCorner: maximal angle of corners in degree (default is 10)
     23%   - maxnbv      : maximum number of vertices used to allocate memory (default is 10^6)
     24%   - maxsubdiv   : maximum subdivision of exisiting elements (default is 10)
     25%   - metric      : matrix (numberofgrids x 3) used as a metric
     26%   - Metrictype  : 1 -> absolute error          c/(err coeff^2) * Abs(H)        (default)
     27%                   2 -> relative error          c/(err coeff^2) * Abs(H)/max(s,cutoff*max(s))
     28%                   3 -> rescaled absolute error c/(err coeff^2) * Abs(H)/(smax-smin)
     29%   - nbjacoby    : correction used by Hessiantype=1 (default is 1)
     30%   - NbSmooth    : number of metric smoothing procedure (default is 3)
     31%   - omega       : relaxation parameter of the smoothing procedure (default is 1.8)
     32%   - power       : power applied to the metric (default is 1)
     33%   - renumber    : 0 -> no renumbering
     34%                   1 -> renumber by distance to lower left corner (default)
     35%                   2 -> random renumbering
     36%   - splitcorner : split triangles whuch have 3 vertices on the outline (default is 1)
     37%   - verbose     : level of verbosity (default is 1)
     38%
     39%   Examples:
     40%      md=bamg(md,'domain','DomainOutline.exp','hmax',3000);
     41%      md=bamg(md,'field',[md.vel_obs md.thickness],'hmax',20000,'hmin',1000);
     42%      md=bamg(md,'metric',A,'hmin',1000,'hmax',20000,'gradation',3,'anisomax',1);
    643
    744%process options
     
    104141
    105142% Bamg Options {{{1
     143bamg_options.anisomax=getfieldvalue(options,'anisomax',10^30);
     144bamg_options.coef=getfieldvalue(options,'coef',1);
     145bamg_options.cutoff=getfieldvalue(options,'cutoff',10^-5);
    106146bamg_options.err=getfieldvalue(options,'err',0.01);
    107147bamg_options.errg=getfieldvalue(options,'errg',0.1);
    108 bamg_options.coef=getfieldvalue(options,'coef',1);
     148bamg_options.field=getfieldvalue(options,'field',[]);
     149bamg_options.gradation=getfieldvalue(options,'gradation',1.5);
     150bamg_options.Hessiantype=getfieldvalue(options,'Hessiantype',0);
     151bamg_options.hmin=getfieldvalue(options,'hmin',10^-100);
     152bamg_options.hmax=getfieldvalue(options,'hmax',10^100);
     153bamg_options.KeepVertices=getfieldvalue(options,'KeepVertices',1);
     154bamg_options.MaximalAngleOfCorner=getfieldvalue(options,'MaximalAngleOfCorner',10);
     155bamg_options.maxnbv=getfieldvalue(options,'maxnbv',10^6);
    109156bamg_options.maxsubdiv=getfieldvalue(options,'maxsubdiv',10);
    110 bamg_options.power=getfieldvalue(options,'power',1);
     157bamg_options.metric=getfieldvalue(options,'metric',[]);
     158bamg_options.Metrictype=getfieldvalue(options,'Metrictype',0);
    111159bamg_options.nbjacobi=getfieldvalue(options,'nbjacobi',1);
    112 bamg_options.Hessiantype=getfieldvalue(options,'Hessiantype',0);
    113 bamg_options.Metrictype=getfieldvalue(options,'Metrictype',0);
    114 bamg_options.KeepVertices=getfieldvalue(options,'KeepVertices',1);
    115160bamg_options.NbSmooth=getfieldvalue(options,'NbSmooth',3);
    116161bamg_options.omega=getfieldvalue(options,'omega',1.8);
    117 bamg_options.maxnbv=getfieldvalue(options,'maxnbv',10^6);
    118 bamg_options.MaximalAngleOfCorner=getfieldvalue(options,'MaximalAngleOfCorner',10);
    119 bamg_options.hmin=getfieldvalue(options,'hmin',10^-100);
    120 bamg_options.hmax=getfieldvalue(options,'hmax',10^100);
    121 bamg_options.anisomax=getfieldvalue(options,'anisomax',10^30);
    122 bamg_options.gradation=getfieldvalue(options,'gradation',1.5);
    123 bamg_options.cutoff=getfieldvalue(options,'cutoff',10^-5);
     162bamg_options.power=getfieldvalue(options,'power',1);
     163bamg_options.renumber=getfieldvalue(options,'renumber',1);
     164bamg_options.splitcorners=getfieldvalue(options,'splitcorners',1);
    124165bamg_options.verbose=getfieldvalue(options,'verbose',1);
    125 bamg_options.splitcorners=getfieldvalue(options,'splitcorners',1);
    126 bamg_options.metric=getfieldvalue(options,'metric',[]);
    127 bamg_options.field=getfieldvalue(options,'field',[]);
    128166%}}}
    129167
Note: See TracChangeset for help on using the changeset viewer.