source: issm/oecreview/Archive/16554-17801/ISSM-17146-17147.diff@ 17802

Last change on this file since 17802 was 17802, checked in by Mathieu Morlighem, 11 years ago

Added archives

File size: 2.4 KB
RevLine 
[17802]1Index: ../trunk-jpl/src/m/inversions/misfit.m
2===================================================================
3--- ../trunk-jpl/src/m/inversions/misfit.m (revision 17146)
4+++ ../trunk-jpl/src/m/inversions/misfit.m (revision 17147)
5@@ -1,39 +0,0 @@
6-function J=misfit(md)
7-%MISFIT - compute misfit
8-%
9-% Usage:
10-% J=misfit(md)
11-%
12-% Example:
13-% J=misfit(md)
14-%
15-
16-if md.mesh.dimension==2,
17- elements=md.mesh.elements;
18- x=md.mesh.x;
19- y=md.mesh.y;
20- %vx=md.initialization.vx;
21- %vy=md.initialization.vy;
22- vx=md.results.StressbalanceSolution.Vx;
23- vy=md.results.StressbalanceSolution.Vy;
24- vx_obs=md.inversion.vx_obs;
25- vy_obs=md.inversion.vy_obs;
26-else
27- elements=md.mesh.elements2d;
28- x=md.mesh.x2d;
29- y=md.mesh.y2d;
30- vx=project2d(md,md.initialization.vx,md.mesh.numberoflayers);
31- vy=project2d(md,md.initialization.vy,md.mesh.numberoflayers);
32- vx_obs=project2d(md,md.inversion.vx_obs,md.mesh.numberoflayers);
33- vy_obs=project2d(md,md.inversion.vy_obs,md.mesh.numberoflayers);
34-end
35-
36-%compute areas;
37-areas=GetAreas(elements,x,y);
38-
39-%compute delta v on elements
40-deltav=1/2*( (vx-vx_obs).^2+(vy-vy_obs).^2)/md.constants.yts^2;
41-deltav_elem=deltav(elements)*[1;1;1]/3;
42-
43-%compute misfit
44-J=sum(deltav_elem.*areas);
45Index: ../trunk-jpl/src/m/inversions/velocitymisfit.m
46===================================================================
47--- ../trunk-jpl/src/m/inversions/velocitymisfit.m (revision 0)
48+++ ../trunk-jpl/src/m/inversions/velocitymisfit.m (revision 17147)
49@@ -0,0 +1,39 @@
50+function J=misfit(md)
51+%MISFIT - compute misfit
52+%
53+% Usage:
54+% J=misfit(md)
55+%
56+% Example:
57+% J=misfit(md)
58+%
59+
60+if md.mesh.dimension==2,
61+ elements=md.mesh.elements;
62+ x=md.mesh.x;
63+ y=md.mesh.y;
64+ %vx=md.initialization.vx;
65+ %vy=md.initialization.vy;
66+ vx=md.results.StressbalanceSolution.Vx;
67+ vy=md.results.StressbalanceSolution.Vy;
68+ vx_obs=md.inversion.vx_obs;
69+ vy_obs=md.inversion.vy_obs;
70+else
71+ elements=md.mesh.elements2d;
72+ x=md.mesh.x2d;
73+ y=md.mesh.y2d;
74+ vx=project2d(md,md.initialization.vx,md.mesh.numberoflayers);
75+ vy=project2d(md,md.initialization.vy,md.mesh.numberoflayers);
76+ vx_obs=project2d(md,md.inversion.vx_obs,md.mesh.numberoflayers);
77+ vy_obs=project2d(md,md.inversion.vy_obs,md.mesh.numberoflayers);
78+end
79+
80+%compute areas;
81+areas=GetAreas(elements,x,y);
82+
83+%compute delta v on elements
84+deltav=1/2*( (vx-vx_obs).^2+(vy-vy_obs).^2)/md.constants.yts^2;
85+deltav_elem=deltav(elements)*[1;1;1]/3;
86+
87+%compute misfit
88+J=sum(deltav_elem.*areas);
Note: See TracBrowser for help on using the repository browser.