Changeset 8211 for issm/trunk


Ignore:
Timestamp:
05/09/11 14:23:38 (14 years ago)
Author:
Eric.Larour
Message:

works for any model, 2D and 3D

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/model/misfit.m

    r2949 r8211  
    33%
    44%   Usage:
    5 %      J=misfti(md)
     5%      J=misfit(md)
    66%
    77%   Example:
    8 %      J=misfti(md)
     8%      J=misfit(md)
    99%
    1010
    1111
    12 areas=GetAreas(md.elements,md.x,md.y);
     12if md.dim==2,
     13        elements=md.elements;
     14        x=md.x;
     15        y=md.y;
     16        vx=md.vx;
     17        vy=md.vy;
     18        vx_obs=md.vx_obs;
     19        vy_obs=md.vy_obs;
     20else
     21        elements=md.elements2d;
     22        x=md.x2d;
     23        y=md.y2d;
     24        vx=project2d(md,md.vx,md.numlayers);
     25        vy=project2d(md,md.vy,md.numlayers);
     26        vx_obs=project2d(md,md.vx_obs,md.numlayers);
     27        vy_obs=project2d(md,md.vy_obs,md.numlayers);
     28end
    1329
    14 deltav=1/2*(   (md.vx-md.vx_obs).^2+(md.vy-md.vy_obs).^2)/md.yts^2;
    15 deltav_elem=deltav(md.elements)*[1;1;1]/3;
     30%compute areas;
     31areas=GetAreas(elements,x,y);
    1632
     33%compute delta v on elements
     34deltav=1/2*(   (vx-vx_obs).^2+(vy-vy_obs).^2)/md.yts^2;
     35deltav_elem=deltav(elements)*[1;1;1]/3;
     36
     37%compute misfit
    1738J=sum(deltav_elem.*areas);
Note: See TracChangeset for help on using the changeset viewer.