source: issm/oecreview/Archive/16133-16554/ISSM-16337-16338.diff@ 16556

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

NEW: added Archive/16133-16554

File size: 5.4 KB
RevLine 
[16556]1Index: ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
2===================================================================
3--- ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 16337)
4+++ ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 16338)
5@@ -610,6 +610,7 @@
6 /*}}}*/
7 /*Coordinate Systems{{{*/
8 XYEnum,
9+ XZEnum,
10 XYZEnum,
11 /*}}}*/
12 /*Toolkits{{{*/
13Index: ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
14===================================================================
15--- ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 16337)
16+++ ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 16338)
17@@ -586,6 +586,7 @@
18 case BilinearInterpEnum : return "BilinearInterp";
19 case NearestInterpEnum : return "NearestInterp";
20 case XYEnum : return "XY";
21+ case XZEnum : return "XZ";
22 case XYZEnum : return "XYZ";
23 case DenseEnum : return "Dense";
24 case MpiDenseEnum : return "MpiDense";
25Index: ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
26===================================================================
27--- ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 16337)
28+++ ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 16338)
29@@ -598,6 +598,7 @@
30 else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
31 else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum;
32 else if (strcmp(name,"XY")==0) return XYEnum;
33+ else if (strcmp(name,"XZ")==0) return XZEnum;
34 else if (strcmp(name,"XYZ")==0) return XYZEnum;
35 else if (strcmp(name,"Dense")==0) return DenseEnum;
36 else if (strcmp(name,"MpiDense")==0) return MpiDenseEnum;
37Index: ../trunk-jpl/src/c/classes/Node.cpp
38===================================================================
39--- ../trunk-jpl/src/c/classes/Node.cpp (revision 16337)
40+++ ../trunk-jpl/src/c/classes/Node.cpp (revision 16338)
41@@ -919,6 +919,7 @@
42 switch(cs_array[i]){
43 case PressureEnum: numdofs+=1; break;
44 case XYEnum: numdofs+=2; break;
45+ case XZEnum: numdofs+=2; break;
46 case XYZEnum: numdofs+=3; break;
47 default: _error_("Coordinate system " << EnumToStringx(cs_array[i]) << " not supported yet");
48 }
49@@ -969,6 +970,7 @@
50 switch(cs_array[i]){
51 case PressureEnum: numdofs+=1; break;
52 case XYEnum: numdofs+=2; break;
53+ case XZEnum: numdofs+=2; break;
54 case XYZEnum: numdofs+=3; break;
55 default: _error_("Coordinate system " << EnumToStringx(cs_array[i]) << " not supported yet");
56 }
57@@ -1018,6 +1020,7 @@
58 switch(cs_array[i]){
59 case PressureEnum: numdofs+=1; break;
60 case XYEnum: numdofs+=2; break;
61+ case XZEnum: numdofs+=2; break;
62 case XYZEnum: numdofs+=3; break;
63 default: _error_("Coordinate system " << EnumToStringx(cs_array[i]) << " not supported yet");
64 }
65@@ -1066,6 +1069,7 @@
66 switch(cs_array[i]){
67 case PressureEnum: numdofs+=1; break;
68 case XYEnum: numdofs+=2; break;
69+ case XZEnum: numdofs+=2; break;
70 case XYZEnum: numdofs+=3; break;
71 default: _error_("Coordinate system " << EnumToStringx(cs_array[i]) << " not supported yet");
72 }
73@@ -1105,6 +1109,7 @@
74 switch(cs_array[i]){
75 case PressureEnum: numdofs+=1; break;
76 case XYEnum: numdofs+=2; break;
77+ case XZEnum: numdofs+=2; break;
78 case XYZEnum: numdofs+=3; break;
79 default: _error_("Coordinate system " << EnumToStringx(cs_array[i]) << " not supported yet");
80 }
81@@ -1141,6 +1146,15 @@
82 transform[(numdofs)*(counter+1) + counter+1] = coord_system[0][0]/norm;
83 counter+=2;
84 break;
85+ case XZEnum:
86+ /*We remove the y component, we need to renormalize x and z: x=[x1 0 x2] y=[-x2 0 x1]*/
87+ norm = sqrt( coord_system[0][0]*coord_system[0][0] + coord_system[2][0]*coord_system[2][0]); _assert_(norm>1.e-4);
88+ transform[(numdofs)*(counter+0) + counter+0] = coord_system[0][0]/norm;
89+ transform[(numdofs)*(counter+0) + counter+2] = - coord_system[2][0]/norm;
90+ transform[(numdofs)*(counter+1) + counter+0] = coord_system[2][0]/norm;
91+ transform[(numdofs)*(counter+1) + counter+2] = coord_system[0][0]/norm;
92+ counter+=2;
93+ break;
94 case XYZEnum:
95 /*The 3 coordinates are changed (x,y,z)*/
96 transform[(numdofs)*(counter+0) + counter+0] = coord_system[0][0];
97Index: ../trunk-jpl/src/m/enum/XZEnum.m
98===================================================================
99--- ../trunk-jpl/src/m/enum/XZEnum.m (revision 0)
100+++ ../trunk-jpl/src/m/enum/XZEnum.m (revision 16338)
101@@ -0,0 +1,11 @@
102+function macro=XZEnum()
103+%XZENUM - Enum of XZ
104+%
105+% WARNING: DO NOT MODIFY THIS FILE
106+% this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
107+% Please read src/c/shared/Enum/README for more information
108+%
109+% Usage:
110+% macro=XZEnum()
111+
112+macro=StringToEnum('XZ');
113Index: ../trunk-jpl/src/m/enum/EnumDefinitions.py
114===================================================================
115--- ../trunk-jpl/src/m/enum/EnumDefinitions.py (revision 16337)
116+++ ../trunk-jpl/src/m/enum/EnumDefinitions.py (revision 16338)
117@@ -578,6 +578,7 @@
118 def BilinearInterpEnum(): return StringToEnum("BilinearInterp")[0]
119 def NearestInterpEnum(): return StringToEnum("NearestInterp")[0]
120 def XYEnum(): return StringToEnum("XY")[0]
121+def XZEnum(): return StringToEnum("XZ")[0]
122 def XYZEnum(): return StringToEnum("XYZ")[0]
123 def DenseEnum(): return StringToEnum("Dense")[0]
124 def MpiDenseEnum(): return StringToEnum("MpiDense")[0]
Note: See TracBrowser for help on using the repository browser.