source: issm/oecreview/Archive/19101-20495/ISSM-20037-20038.diff@ 20498

Last change on this file since 20498 was 20498, checked in by Mathieu Morlighem, 9 years ago

CHG: done with Archive/19101-20495

File size: 30.9 KB
RevLine 
[20498]1Index: ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
2===================================================================
3--- ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 20037)
4+++ ../trunk-jpl/src/c/shared/Enum/EnumDefinitions.h (revision 20038)
5@@ -895,6 +895,11 @@
6 MassfluxatgateNameEnum,
7 MassfluxatgateDefinitionenumEnum,
8 MassfluxatgateSegmentsEnum,
9+ NodalvalueEnum,
10+ NodalvalueNameEnum,
11+ NodalvalueDefinitionenumEnum,
12+ NodalvalueModelEnumEnum,
13+ NodalvalueNodeEnum,
14 MisfitNameEnum,
15 MisfitDefinitionenumEnum,
16 MisfitModelEnumEnum,
17Index: ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
18===================================================================
19--- ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 20037)
20+++ ../trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp (revision 20038)
21@@ -875,6 +875,11 @@
22 case MassfluxatgateNameEnum : return "MassfluxatgateName";
23 case MassfluxatgateDefinitionenumEnum : return "MassfluxatgateDefinitionenum";
24 case MassfluxatgateSegmentsEnum : return "MassfluxatgateSegments";
25+ case NodalvalueEnum : return "Nodalvalue";
26+ case NodalvalueNameEnum : return "NodalvalueName";
27+ case NodalvalueDefinitionenumEnum : return "NodalvalueDefinitionenum";
28+ case NodalvalueModelEnumEnum : return "NodalvalueModelEnum";
29+ case NodalvalueNodeEnum : return "NodalvalueNode";
30 case MisfitNameEnum : return "MisfitName";
31 case MisfitDefinitionenumEnum : return "MisfitDefinitionenum";
32 case MisfitModelEnumEnum : return "MisfitModelEnum";
33Index: ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
34===================================================================
35--- ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 20037)
36+++ ../trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp (revision 20038)
37@@ -896,6 +896,11 @@
38 else if (strcmp(name,"MassfluxatgateName")==0) return MassfluxatgateNameEnum;
39 else if (strcmp(name,"MassfluxatgateDefinitionenum")==0) return MassfluxatgateDefinitionenumEnum;
40 else if (strcmp(name,"MassfluxatgateSegments")==0) return MassfluxatgateSegmentsEnum;
41+ else if (strcmp(name,"Nodalvalue")==0) return NodalvalueEnum;
42+ else if (strcmp(name,"NodalvalueName")==0) return NodalvalueNameEnum;
43+ else if (strcmp(name,"NodalvalueDefinitionenum")==0) return NodalvalueDefinitionenumEnum;
44+ else if (strcmp(name,"NodalvalueModelEnum")==0) return NodalvalueModelEnumEnum;
45+ else if (strcmp(name,"NodalvalueNode")==0) return NodalvalueNodeEnum;
46 else if (strcmp(name,"MisfitName")==0) return MisfitNameEnum;
47 else if (strcmp(name,"MisfitDefinitionenum")==0) return MisfitDefinitionenumEnum;
48 else if (strcmp(name,"MisfitModelEnum")==0) return MisfitModelEnumEnum;
49@@ -992,15 +997,15 @@
50 else if (strcmp(name,"MpiSparse")==0) return MpiSparseEnum;
51 else if (strcmp(name,"Seq")==0) return SeqEnum;
52 else if (strcmp(name,"Mpi")==0) return MpiEnum;
53- else if (strcmp(name,"Mumps")==0) return MumpsEnum;
54+ else stage=9;
55+ }
56+ if(stage==9){
57+ if (strcmp(name,"Mumps")==0) return MumpsEnum;
58 else if (strcmp(name,"Gsl")==0) return GslEnum;
59 else if (strcmp(name,"Option")==0) return OptionEnum;
60 else if (strcmp(name,"GenericOption")==0) return GenericOptionEnum;
61 else if (strcmp(name,"OptionCell")==0) return OptionCellEnum;
62- else stage=9;
63- }
64- if(stage==9){
65- if (strcmp(name,"OptionStruct")==0) return OptionStructEnum;
66+ else if (strcmp(name,"OptionStruct")==0) return OptionStructEnum;
67 else if (strcmp(name,"Cuffey")==0) return CuffeyEnum;
68 else if (strcmp(name,"Paterson")==0) return PatersonEnum;
69 else if (strcmp(name,"Arrhenius")==0) return ArrheniusEnum;
70Index: ../trunk-jpl/src/c/modules/modules.h
71===================================================================
72--- ../trunk-jpl/src/c/modules/modules.h (revision 20037)
73+++ ../trunk-jpl/src/c/modules/modules.h (revision 20038)
74@@ -20,6 +20,7 @@
75 #include "./CreateNodalConstraintsx/CreateNodalConstraintsx.h"
76 #include "./CreateJacobianMatrixx/CreateJacobianMatrixx.h"
77 #include "./Damagex/Damagex.h"
78+#include "./DistanceToMaskBoundaryx/DistanceToMaskBoundaryx.h"
79 #include "./DragCoefficientAbsGradientx/DragCoefficientAbsGradientx.h"
80 #include "./ExpToLevelSetx/ExpToLevelSetx.h"
81 #include "./ElementConnectivityx/ElementConnectivityx.h"
82Index: ../trunk-jpl/src/c/modules/NodalValuex/NodalValuex.cpp
83===================================================================
84--- ../trunk-jpl/src/c/modules/NodalValuex/NodalValuex.cpp (revision 20037)
85+++ ../trunk-jpl/src/c/modules/NodalValuex/NodalValuex.cpp (revision 20038)
86@@ -11,13 +11,16 @@
87
88 IssmDouble value;
89 int index;
90- int found,sumfound,cpu_found;
91+ int found,sumfound,cpu_found,cpu;
92
93 /*retrieve element we are interested in: */
94 parameters->FindParam(&index,IndexEnum);
95
96 /*This is the vertex id for which we want to collect the data. Go through elements, and for each
97 *element, figure out if they hold the vertex, and the data. If so, return it: */
98+ cpu_found=-1;
99+ found=0;
100+
101 for(int i=0;i<elements->Size();i++){
102 Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(i));
103 found=element->NodalValue(&value,index,natureofdataenum);
104@@ -29,11 +32,11 @@
105
106 /*Broadcast whether we found the element: */
107 ISSM_MPI_Allreduce(&found,&sumfound,1,ISSM_MPI_INT,ISSM_MPI_SUM,IssmComm::GetComm());
108- if(!sumfound)_error_("could not find element with vertex with id" << index << " to compute nodal value " << EnumToStringx(natureofdataenum));
109+ if(!sumfound)_error_("could not find element with vertex with id " << index << " to compute nodal value " << EnumToStringx(natureofdataenum));
110
111 /*Broadcast and plug into response: */
112- ISSM_MPI_Allreduce ( &cpu_found,&cpu_found,1,ISSM_MPI_INT,ISSM_MPI_MAX,IssmComm::GetComm());
113- ISSM_MPI_Bcast(&value,1,ISSM_MPI_DOUBLE,cpu_found,IssmComm::GetComm());
114+ ISSM_MPI_Allreduce ( &cpu_found,&cpu,1,ISSM_MPI_INT,ISSM_MPI_MAX,IssmComm::GetComm());
115+ ISSM_MPI_Bcast(&value,1,ISSM_MPI_DOUBLE,cpu,IssmComm::GetComm());
116
117 *pnodalvalue=value;
118 }
119Index: ../trunk-jpl/src/c/modules/ModelProcessorx/CreateOutputDefinitions.cpp
120===================================================================
121--- ../trunk-jpl/src/c/modules/ModelProcessorx/CreateOutputDefinitions.cpp (revision 20037)
122+++ ../trunk-jpl/src/c/modules/ModelProcessorx/CreateOutputDefinitions.cpp (revision 20038)
123@@ -122,6 +122,40 @@
124 xDelete<int>(misfit_weights_enum_s);
125 /*}}}*/
126 }
127+ else if (output_definition_enums[i]==NodalvalueEnum){
128+ /*Deal with nodal values: {{{*/
129+
130+ /*nodal value variables: */
131+ int numnodalvalues;
132+ char** nodalvalue_name_s = NULL;
133+ int* nodalvalue_definitionenums_s = NULL;
134+ int* nodalvalue_model_enum_s = NULL;
135+ int* nodalvalue_node_s = NULL;
136+
137+ /*Fetch name, model_enum, etc ... (see src/m/classes/nodalvalue.m): */
138+ iomodel->FetchMultipleData(&nodalvalue_name_s,&numnodalvalues,NodalvalueNameEnum);
139+ iomodel->FetchMultipleData(&nodalvalue_definitionenums_s,&numnodalvalues,NodalvalueDefinitionenumEnum);
140+ iomodel->FetchMultipleData(&nodalvalue_model_enum_s,&numnodalvalues,NodalvalueModelEnumEnum);
141+ iomodel->FetchMultipleData(&nodalvalue_node_s,&numnodalvalues,NodalvalueNodeEnum);
142+
143+ for(j=0;j<numnodalvalues;j++){
144+
145+ /*First create a nodalvalue object for that specific enum (nodalvalue_model_enum_s[j]):*/
146+ output_definitions->AddObject(new Nodalvalue(nodalvalue_name_s[j],nodalvalue_definitionenums_s[j],nodalvalue_model_enum_s[j],nodalvalue_node_s[j]-1)); //-1 because matlab to c indexing.
147+ }
148+
149+ /*Free ressources:*/
150+ for(j=0;j<numnodalvalues;j++){
151+ char* string=NULL;
152+ IssmDouble* matrix = NULL;
153+ string = nodalvalue_name_s[j]; xDelete<char>(string);
154+ }
155+ xDelete<char*>(nodalvalue_name_s);
156+ xDelete<int>(nodalvalue_model_enum_s);
157+ xDelete<int>(nodalvalue_definitionenums_s);
158+ xDelete<int>(nodalvalue_node_s);
159+ /*}}}*/
160+ }
161 else if (output_definition_enums[i]==MassconEnum){
162 /*Deal with masscons: {{{*/
163
164Index: ../trunk-jpl/src/c/classes/classes.h
165===================================================================
166--- ../trunk-jpl/src/c/classes/classes.h (revision 20037)
167+++ ../trunk-jpl/src/c/classes/classes.h (revision 20038)
168@@ -18,6 +18,7 @@
169 #include "./Segment.h"
170 #include "./Massfluxatgate.h"
171 #include "./Misfit.h"
172+#include "./Nodalvalue.h"
173 #include "./Masscon.h"
174 #include "./Massconaxpby.h"
175
176Index: ../trunk-jpl/src/c/classes/Nodalvalue.h
177===================================================================
178--- ../trunk-jpl/src/c/classes/Nodalvalue.h (revision 0)
179+++ ../trunk-jpl/src/c/classes/Nodalvalue.h (revision 20038)
180@@ -0,0 +1,117 @@
181+/*!\file Nodalvalue.h
182+ * \brief: header file for Nodalvalue object
183+ */
184+
185+#ifndef _NODALVALUE_H_
186+#define _NODALVALUE_H_
187+
188+/*Headers:*/
189+/*{{{*/
190+#include "./Definition.h"
191+#include "../datastructures/datastructures.h"
192+#include "./Elements/Element.h"
193+#include "./Elements/Elements.h"
194+#include "./FemModel.h"
195+#include "../modules/SurfaceAreax/SurfaceAreax.h"
196+#include "../classes/Params/Parameters.h"
197+#include "../classes/Inputs/Input.h"
198+#include "../classes/gauss/Gauss.h"
199+/*}}}*/
200+
201+void NodalValuex( IssmDouble* pnodalvalue, int natureofdataenum,Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
202+IssmDouble OutputDefinitionsResponsex(FemModel* femmodel,int output_enum);
203+
204+class Nodalvalue: public Object, public Definition{
205+
206+ public:
207+
208+ int definitionenum;
209+ char* name;
210+ int model_enum;
211+ int node;
212+
213+ /*Nodalvalue constructors, destructors :*/
214+ Nodalvalue(){/*{{{*/
215+
216+ this->definitionenum = -1;
217+ this->name = NULL;
218+ this->model_enum = UNDEF;
219+ this->node = -1;
220+
221+ }
222+ /*}}}*/
223+ Nodalvalue(char* in_name, int in_definitionenum, int in_model_enum, int in_node){/*{{{*/
224+
225+ this->definitionenum=in_definitionenum;
226+ this->name = xNew<char>(strlen(in_name)+1);
227+ xMemCpy<char>(this->name,in_name,strlen(in_name)+1);
228+
229+ this->model_enum=in_model_enum;
230+ this->node=in_node;
231+ }
232+ /*}}}*/
233+ ~Nodalvalue(){/*{{{*/
234+ if(this->name)xDelete(this->name);
235+ }
236+ /*}}}*/
237+ /*Object virtual function resolutoin: */
238+ void Echo(void){/*{{{*/
239+ _printf_(" Nodalvalue: " << name << " " << this->definitionenum << "\n");
240+ _printf_(" model_enum: " << model_enum << " " << EnumToStringx(model_enum) << "\n");
241+ _printf_(" node: " << node << "\n");
242+ }
243+ /*}}}*/
244+ void DeepEcho(void){/*{{{*/
245+ this->Echo();
246+ }
247+ /*}}}*/
248+ int Id(void){/*{{{*/
249+ return -1;
250+ }
251+ /*}}}*/
252+ int ObjectEnum(void){/*{{{*/
253+ return NodalvalueEnum;
254+ }
255+ /*}}}*/
256+ Object* copy() {/*{{{*/
257+ Nodalvalue* mf = new Nodalvalue(this->name,this->definitionenum, this->model_enum,this->node);
258+ return (Object*) mf;
259+ }
260+ /*}}}*/
261+ void Marshall(char** pmarshalled_data,int* pmarshalled_data_size, int marshall_direction){/*{{{*/
262+ _error_("not implemented yet!");
263+ }
264+ /*}}}*/
265+ /*Definition virtual function resolutoin: */
266+ char* Name(){/*{{{*/
267+
268+ char* name2=xNew<char>(strlen(this->name)+1);
269+ xMemCpy(name2,this->name,strlen(this->name)+1);
270+
271+ return name2;
272+ }
273+ /*}}}*/
274+ int DefinitionEnum(){/*{{{*/
275+
276+ return this->definitionenum;
277+ }
278+ /*}}}*/
279+ IssmDouble Response(FemModel* femmodel){/*{{{*/
280+
281+ /*output:*/
282+ IssmDouble value;
283+
284+ /*set index, which will be used by the NodalValue module: */
285+ femmodel->parameters->SetParam(node,IndexEnum);
286+
287+ /*call Nodalvalue:*/
288+ NodalValuex(&value, model_enum, femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads,
289+ femmodel->materials, femmodel->parameters);
290+
291+ /*done:*/
292+ return value;
293+ }
294+ /*}}}*/
295+};
296+
297+#endif /* _NODALVALUE_H_ */
298Index: ../trunk-jpl/src/m/plot/applyoptions.m
299===================================================================
300--- ../trunk-jpl/src/m/plot/applyoptions.m (revision 20037)
301+++ ../trunk-jpl/src/m/plot/applyoptions.m (revision 20038)
302@@ -98,6 +98,11 @@
303 basinzoom(options);
304 end
305
306+%Zoom
307+if exist(options,'zoom');
308+ zoom(getfieldvalue(options,'zoom',2));
309+end
310+
311 %ShowBasins
312 if strcmpi(getfieldvalue(options,'showbasins','off'),'on')
313 showbasins(options);
314Index: ../trunk-jpl/src/m/classes/nodalvalue.m
315===================================================================
316--- ../trunk-jpl/src/m/classes/nodalvalue.m (revision 0)
317+++ ../trunk-jpl/src/m/classes/nodalvalue.m (revision 20038)
318@@ -0,0 +1,66 @@
319+%NODALVALUE class definition
320+%
321+% Usage:
322+% nodalvalue=nodalvalue();
323+% nodalvalue=nodalvalue('name','SealevelriseSNodalValue',...
324+% 'definitionenum',Outputdefinition1Enum,
325+% 'model_enum',SealevelriseSEnum,...
326+% 'node',1);
327+
328+classdef nodalvalue
329+ properties (SetAccess=public)
330+ %nodalvalue
331+ name = '';
332+ definitionenum = NaN; %enum that identifies this output definition uniquely, from Outputdefinition[1-10]Enum
333+ model_enum = NaN; %enum for field that is being retrieved
334+ node = NaN; %for which node are we retrieving the value?
335+ end
336+
337+ methods
338+ function self = nodalvalue(varargin) % {{{
339+ if nargin==0,
340+ self=setdefaultparameters(self);
341+ else
342+ %use provided options to change fields
343+ options=pairoptions(varargin{:});
344+
345+ %get name
346+ self.name=getfieldvalue(options,'name','');
347+ self.definitionenum=getfieldvalue(options,'definitionenum');
348+ self.model_enum=getfieldvalue(options,'model_enum');
349+ self.node=getfieldvalue(options,'node',NaN);
350+
351+ end
352+ end % }}}
353+ function self = setdefaultparameters(self) % {{{
354+ end % }}}
355+ function md = checkconsistency(self,md,solution,analyses) % {{{
356+
357+ if ~ischar(self.name),
358+ error('nodalvalue error message: ''name'' field should be a string!');
359+ end
360+ md = checkfield(md,'fieldname','self.definitionenum','field',self.definitionenum,'values',[Outputdefinition1Enum:Outputdefinition100Enum]);
361+
362+ md = checkfield(md,'fieldname','self.node','field',self.node,'values',[1:md.mesh.numberofvertices]);
363+
364+ end % }}}
365+ function md = disp(self) % {{{
366+
367+ disp(sprintf(' Nodalvalue:\n'));
368+
369+ fielddisplay(self,'name','identifier for this nodalvalue response');
370+ fielddisplay(self,'definitionenum','enum that identifies this output definition uniquely, from Outputdefinition[1-10]Enum');
371+ fielddisplay(self,'model_enum','enum for field that is being retrieved');
372+ fielddisplay(self,'node','vertex index at which we retrieve the value');
373+
374+ end % }}}
375+ function md = marshall(self,md,fid) % {{{
376+
377+ WriteData(fid,'object',self,'fieldname','name','format','String');
378+ WriteData(fid,'object',self,'fieldname','definitionenum','format','Integer');
379+ WriteData(fid,'object',self,'fieldname','model_enum','format','Integer');
380+ WriteData(fid,'object',self,'fieldname','node','format','Integer');
381+
382+ end % }}}
383+ end
384+end
385Index: ../trunk-jpl/src/m/enum/NodalvalueEnum.m
386===================================================================
387--- ../trunk-jpl/src/m/enum/NodalvalueEnum.m (revision 0)
388+++ ../trunk-jpl/src/m/enum/NodalvalueEnum.m (revision 20038)
389@@ -0,0 +1,11 @@
390+function macro=NodalvalueEnum()
391+%NODALVALUEENUM - Enum of Nodalvalue
392+%
393+% WARNING: DO NOT MODIFY THIS FILE
394+% this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
395+% Please read src/c/shared/Enum/README for more information
396+%
397+% Usage:
398+% macro=NodalvalueEnum()
399+
400+macro=StringToEnum('Nodalvalue');
401Index: ../trunk-jpl/src/m/enum/NodalvalueNodeEnum.m
402===================================================================
403--- ../trunk-jpl/src/m/enum/NodalvalueNodeEnum.m (revision 0)
404+++ ../trunk-jpl/src/m/enum/NodalvalueNodeEnum.m (revision 20038)
405@@ -0,0 +1,11 @@
406+function macro=NodalvalueNodeEnum()
407+%NODALVALUENODEENUM - Enum of NodalvalueNode
408+%
409+% WARNING: DO NOT MODIFY THIS FILE
410+% this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
411+% Please read src/c/shared/Enum/README for more information
412+%
413+% Usage:
414+% macro=NodalvalueNodeEnum()
415+
416+macro=StringToEnum('NodalvalueNode');
417Index: ../trunk-jpl/src/m/enum/EnumDefinitions.js
418===================================================================
419--- ../trunk-jpl/src/m/enum/EnumDefinitions.js (revision 20037)
420+++ ../trunk-jpl/src/m/enum/EnumDefinitions.js (revision 20038)
421@@ -860,133 +860,138 @@
422 function MassfluxatgateNameEnum(){ return 856;}
423 function MassfluxatgateDefinitionenumEnum(){ return 857;}
424 function MassfluxatgateSegmentsEnum(){ return 858;}
425-function MisfitNameEnum(){ return 859;}
426-function MisfitDefinitionenumEnum(){ return 860;}
427-function MisfitModelEnum(){ return 861;}
428-function MisfitObservationEnum(){ return 862;}
429-function MisfitObservationEnum(){ return 863;}
430-function MisfitLocalEnum(){ return 864;}
431-function MisfitTimeinterpolationEnum(){ return 865;}
432-function MisfitWeightsEnum(){ return 866;}
433-function MisfitWeightsEnum(){ return 867;}
434-function SurfaceObservationEnum(){ return 868;}
435-function WeightsSurfaceObservationEnum(){ return 869;}
436-function VxObsEnum(){ return 870;}
437-function WeightsVxObsEnum(){ return 871;}
438-function VyObsEnum(){ return 872;}
439-function WeightsVyObsEnum(){ return 873;}
440-function MinVelEnum(){ return 874;}
441-function MaxVelEnum(){ return 875;}
442-function MinVxEnum(){ return 876;}
443-function MaxVxEnum(){ return 877;}
444-function MaxAbsVxEnum(){ return 878;}
445-function MinVyEnum(){ return 879;}
446-function MaxVyEnum(){ return 880;}
447-function MaxAbsVyEnum(){ return 881;}
448-function MinVzEnum(){ return 882;}
449-function MaxVzEnum(){ return 883;}
450-function MaxAbsVzEnum(){ return 884;}
451-function FloatingAreaEnum(){ return 885;}
452-function GroundedAreaEnum(){ return 886;}
453-function IceMassEnum(){ return 887;}
454-function IceVolumeEnum(){ return 888;}
455-function IceVolumeAboveFloatationEnum(){ return 889;}
456-function TotalSmbEnum(){ return 890;}
457-function AbsoluteEnum(){ return 891;}
458-function IncrementalEnum(){ return 892;}
459-function AugmentedLagrangianREnum(){ return 893;}
460-function AugmentedLagrangianRhopEnum(){ return 894;}
461-function AugmentedLagrangianRlambdaEnum(){ return 895;}
462-function AugmentedLagrangianRholambdaEnum(){ return 896;}
463-function AugmentedLagrangianThetaEnum(){ return 897;}
464-function NoneEnum(){ return 898;}
465-function AggressiveMigrationEnum(){ return 899;}
466-function SoftMigrationEnum(){ return 900;}
467-function SubelementMigrationEnum(){ return 901;}
468-function SubelementMigration2Enum(){ return 902;}
469-function ContactEnum(){ return 903;}
470-function GroundingOnlyEnum(){ return 904;}
471-function MaskGroundediceLevelsetEnum(){ return 905;}
472-function GaussSegEnum(){ return 906;}
473-function GaussTriaEnum(){ return 907;}
474-function GaussTetraEnum(){ return 908;}
475-function GaussPentaEnum(){ return 909;}
476-function FSSolverEnum(){ return 910;}
477-function AdjointEnum(){ return 911;}
478-function ColinearEnum(){ return 912;}
479-function ControlSteadyEnum(){ return 913;}
480-function FsetEnum(){ return 914;}
481-function Gradient1Enum(){ return 915;}
482-function Gradient2Enum(){ return 916;}
483-function Gradient3Enum(){ return 917;}
484-function GradientEnum(){ return 918;}
485-function GroundinglineMigrationEnum(){ return 919;}
486-function GsetEnum(){ return 920;}
487-function IndexEnum(){ return 921;}
488-function IndexedEnum(){ return 922;}
489-function IntersectEnum(){ return 923;}
490-function NodalEnum(){ return 924;}
491-function OldGradientEnum(){ return 925;}
492-function OutputBufferPointerEnum(){ return 926;}
493-function OutputBufferSizePointerEnum(){ return 927;}
494-function OutputFilePointerEnum(){ return 928;}
495-function ToolkitsFileNameEnum(){ return 929;}
496-function RootPathEnum(){ return 930;}
497-function OutputFileNameEnum(){ return 931;}
498-function InputFileNameEnum(){ return 932;}
499-function LockFileNameEnum(){ return 933;}
500-function RestartFileNameEnum(){ return 934;}
501-function ToolkitsOptionsAnalysesEnum(){ return 935;}
502-function ToolkitsOptionsStringsEnum(){ return 936;}
503-function QmuErrNameEnum(){ return 937;}
504-function QmuInNameEnum(){ return 938;}
505-function QmuOutNameEnum(){ return 939;}
506-function RegularEnum(){ return 940;}
507-function ScaledEnum(){ return 941;}
508-function SeparateEnum(){ return 942;}
509-function SsetEnum(){ return 943;}
510-function VerboseEnum(){ return 944;}
511-function TriangleInterpEnum(){ return 945;}
512-function BilinearInterpEnum(){ return 946;}
513-function NearestInterpEnum(){ return 947;}
514-function XYEnum(){ return 948;}
515-function XYZEnum(){ return 949;}
516-function DenseEnum(){ return 950;}
517-function MpiDenseEnum(){ return 951;}
518-function MpiSparseEnum(){ return 952;}
519-function SeqEnum(){ return 953;}
520-function MpiEnum(){ return 954;}
521-function MumpsEnum(){ return 955;}
522-function GslEnum(){ return 956;}
523-function OptionEnum(){ return 957;}
524-function GenericOptionEnum(){ return 958;}
525-function OptionCellEnum(){ return 959;}
526-function OptionStructEnum(){ return 960;}
527-function CuffeyEnum(){ return 961;}
528-function PatersonEnum(){ return 962;}
529-function ArrheniusEnum(){ return 963;}
530-function LliboutryDuvalEnum(){ return 964;}
531-function TransientIslevelsetEnum(){ return 965;}
532-function SpcLevelsetEnum(){ return 966;}
533-function ExtrapolationVariableEnum(){ return 967;}
534-function IceMaskNodeActivationEnum(){ return 968;}
535-function LevelsetfunctionSlopeXEnum(){ return 969;}
536-function LevelsetfunctionSlopeYEnum(){ return 970;}
537-function LevelsetfunctionPicardEnum(){ return 971;}
538-function SealevelriseSolutionEnum(){ return 972;}
539-function SealevelriseAnalysisEnum(){ return 973;}
540-function SealevelriseSEnum(){ return 974;}
541-function SealevelriseDeltathicknessEnum(){ return 975;}
542-function SealevelriseMaxiterEnum(){ return 976;}
543-function SealevelriseReltolEnum(){ return 977;}
544-function SealevelriseAbstolEnum(){ return 978;}
545-function SealevelriseLoveHEnum(){ return 979;}
546-function SealevelriseLoveKEnum(){ return 980;}
547-function SealevelriseRigidEnum(){ return 981;}
548-function SealevelriseElasticEnum(){ return 982;}
549-function SealevelriseEustaticEnum(){ return 983;}
550-function SealevelriseGElasticEnum(){ return 984;}
551-function SealevelriseDegaccEnum(){ return 985;}
552-function SealevelriseRequestedOutputsEnum(){ return 986;}
553-function SealevelriseNumRequestedOutputsEnum(){ return 987;}
554-function MaximumNumberOfDefinitionsEnum(){ return 988;}
555+function NodalvalueEnum(){ return 859;}
556+function NodalvalueNameEnum(){ return 860;}
557+function NodalvalueDefinitionenumEnum(){ return 861;}
558+function NodalvalueModelEnum(){ return 862;}
559+function NodalvalueNodeEnum(){ return 863;}
560+function MisfitNameEnum(){ return 864;}
561+function MisfitDefinitionenumEnum(){ return 865;}
562+function MisfitModelEnum(){ return 866;}
563+function MisfitObservationEnum(){ return 867;}
564+function MisfitObservationEnum(){ return 868;}
565+function MisfitLocalEnum(){ return 869;}
566+function MisfitTimeinterpolationEnum(){ return 870;}
567+function MisfitWeightsEnum(){ return 871;}
568+function MisfitWeightsEnum(){ return 872;}
569+function SurfaceObservationEnum(){ return 873;}
570+function WeightsSurfaceObservationEnum(){ return 874;}
571+function VxObsEnum(){ return 875;}
572+function WeightsVxObsEnum(){ return 876;}
573+function VyObsEnum(){ return 877;}
574+function WeightsVyObsEnum(){ return 878;}
575+function MinVelEnum(){ return 879;}
576+function MaxVelEnum(){ return 880;}
577+function MinVxEnum(){ return 881;}
578+function MaxVxEnum(){ return 882;}
579+function MaxAbsVxEnum(){ return 883;}
580+function MinVyEnum(){ return 884;}
581+function MaxVyEnum(){ return 885;}
582+function MaxAbsVyEnum(){ return 886;}
583+function MinVzEnum(){ return 887;}
584+function MaxVzEnum(){ return 888;}
585+function MaxAbsVzEnum(){ return 889;}
586+function FloatingAreaEnum(){ return 890;}
587+function GroundedAreaEnum(){ return 891;}
588+function IceMassEnum(){ return 892;}
589+function IceVolumeEnum(){ return 893;}
590+function IceVolumeAboveFloatationEnum(){ return 894;}
591+function TotalSmbEnum(){ return 895;}
592+function AbsoluteEnum(){ return 896;}
593+function IncrementalEnum(){ return 897;}
594+function AugmentedLagrangianREnum(){ return 898;}
595+function AugmentedLagrangianRhopEnum(){ return 899;}
596+function AugmentedLagrangianRlambdaEnum(){ return 900;}
597+function AugmentedLagrangianRholambdaEnum(){ return 901;}
598+function AugmentedLagrangianThetaEnum(){ return 902;}
599+function NoneEnum(){ return 903;}
600+function AggressiveMigrationEnum(){ return 904;}
601+function SoftMigrationEnum(){ return 905;}
602+function SubelementMigrationEnum(){ return 906;}
603+function SubelementMigration2Enum(){ return 907;}
604+function ContactEnum(){ return 908;}
605+function GroundingOnlyEnum(){ return 909;}
606+function MaskGroundediceLevelsetEnum(){ return 910;}
607+function GaussSegEnum(){ return 911;}
608+function GaussTriaEnum(){ return 912;}
609+function GaussTetraEnum(){ return 913;}
610+function GaussPentaEnum(){ return 914;}
611+function FSSolverEnum(){ return 915;}
612+function AdjointEnum(){ return 916;}
613+function ColinearEnum(){ return 917;}
614+function ControlSteadyEnum(){ return 918;}
615+function FsetEnum(){ return 919;}
616+function Gradient1Enum(){ return 920;}
617+function Gradient2Enum(){ return 921;}
618+function Gradient3Enum(){ return 922;}
619+function GradientEnum(){ return 923;}
620+function GroundinglineMigrationEnum(){ return 924;}
621+function GsetEnum(){ return 925;}
622+function IndexEnum(){ return 926;}
623+function IndexedEnum(){ return 927;}
624+function IntersectEnum(){ return 928;}
625+function NodalEnum(){ return 929;}
626+function OldGradientEnum(){ return 930;}
627+function OutputBufferPointerEnum(){ return 931;}
628+function OutputBufferSizePointerEnum(){ return 932;}
629+function OutputFilePointerEnum(){ return 933;}
630+function ToolkitsFileNameEnum(){ return 934;}
631+function RootPathEnum(){ return 935;}
632+function OutputFileNameEnum(){ return 936;}
633+function InputFileNameEnum(){ return 937;}
634+function LockFileNameEnum(){ return 938;}
635+function RestartFileNameEnum(){ return 939;}
636+function ToolkitsOptionsAnalysesEnum(){ return 940;}
637+function ToolkitsOptionsStringsEnum(){ return 941;}
638+function QmuErrNameEnum(){ return 942;}
639+function QmuInNameEnum(){ return 943;}
640+function QmuOutNameEnum(){ return 944;}
641+function RegularEnum(){ return 945;}
642+function ScaledEnum(){ return 946;}
643+function SeparateEnum(){ return 947;}
644+function SsetEnum(){ return 948;}
645+function VerboseEnum(){ return 949;}
646+function TriangleInterpEnum(){ return 950;}
647+function BilinearInterpEnum(){ return 951;}
648+function NearestInterpEnum(){ return 952;}
649+function XYEnum(){ return 953;}
650+function XYZEnum(){ return 954;}
651+function DenseEnum(){ return 955;}
652+function MpiDenseEnum(){ return 956;}
653+function MpiSparseEnum(){ return 957;}
654+function SeqEnum(){ return 958;}
655+function MpiEnum(){ return 959;}
656+function MumpsEnum(){ return 960;}
657+function GslEnum(){ return 961;}
658+function OptionEnum(){ return 962;}
659+function GenericOptionEnum(){ return 963;}
660+function OptionCellEnum(){ return 964;}
661+function OptionStructEnum(){ return 965;}
662+function CuffeyEnum(){ return 966;}
663+function PatersonEnum(){ return 967;}
664+function ArrheniusEnum(){ return 968;}
665+function LliboutryDuvalEnum(){ return 969;}
666+function TransientIslevelsetEnum(){ return 970;}
667+function SpcLevelsetEnum(){ return 971;}
668+function ExtrapolationVariableEnum(){ return 972;}
669+function IceMaskNodeActivationEnum(){ return 973;}
670+function LevelsetfunctionSlopeXEnum(){ return 974;}
671+function LevelsetfunctionSlopeYEnum(){ return 975;}
672+function LevelsetfunctionPicardEnum(){ return 976;}
673+function SealevelriseSolutionEnum(){ return 977;}
674+function SealevelriseAnalysisEnum(){ return 978;}
675+function SealevelriseSEnum(){ return 979;}
676+function SealevelriseDeltathicknessEnum(){ return 980;}
677+function SealevelriseMaxiterEnum(){ return 981;}
678+function SealevelriseReltolEnum(){ return 982;}
679+function SealevelriseAbstolEnum(){ return 983;}
680+function SealevelriseLoveHEnum(){ return 984;}
681+function SealevelriseLoveKEnum(){ return 985;}
682+function SealevelriseRigidEnum(){ return 986;}
683+function SealevelriseElasticEnum(){ return 987;}
684+function SealevelriseEustaticEnum(){ return 988;}
685+function SealevelriseGElasticEnum(){ return 989;}
686+function SealevelriseDegaccEnum(){ return 990;}
687+function SealevelriseRequestedOutputsEnum(){ return 991;}
688+function SealevelriseNumRequestedOutputsEnum(){ return 992;}
689+function MaximumNumberOfDefinitionsEnum(){ return 993;}
690Index: ../trunk-jpl/src/m/enum/NodalvalueDefinitionenumEnum.m
691===================================================================
692--- ../trunk-jpl/src/m/enum/NodalvalueDefinitionenumEnum.m (revision 0)
693+++ ../trunk-jpl/src/m/enum/NodalvalueDefinitionenumEnum.m (revision 20038)
694@@ -0,0 +1,11 @@
695+function macro=NodalvalueDefinitionenumEnum()
696+%NODALVALUEDEFINITIONENUMENUM - Enum of NodalvalueDefinitionenum
697+%
698+% WARNING: DO NOT MODIFY THIS FILE
699+% this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
700+% Please read src/c/shared/Enum/README for more information
701+%
702+% Usage:
703+% macro=NodalvalueDefinitionenumEnum()
704+
705+macro=StringToEnum('NodalvalueDefinitionenum');
706Index: ../trunk-jpl/src/m/enum/EnumDefinitions.py
707===================================================================
708--- ../trunk-jpl/src/m/enum/EnumDefinitions.py (revision 20037)
709+++ ../trunk-jpl/src/m/enum/EnumDefinitions.py (revision 20038)
710@@ -867,6 +867,11 @@
711 def MassfluxatgateNameEnum(): return StringToEnum("MassfluxatgateName")[0]
712 def MassfluxatgateDefinitionenumEnum(): return StringToEnum("MassfluxatgateDefinitionenum")[0]
713 def MassfluxatgateSegmentsEnum(): return StringToEnum("MassfluxatgateSegments")[0]
714+def NodalvalueEnum(): return StringToEnum("Nodalvalue")[0]
715+def NodalvalueNameEnum(): return StringToEnum("NodalvalueName")[0]
716+def NodalvalueDefinitionenumEnum(): return StringToEnum("NodalvalueDefinitionenum")[0]
717+def NodalvalueModelEnumEnum(): return StringToEnum("NodalvalueModelEnum")[0]
718+def NodalvalueNodeEnum(): return StringToEnum("NodalvalueNode")[0]
719 def MisfitNameEnum(): return StringToEnum("MisfitName")[0]
720 def MisfitDefinitionenumEnum(): return StringToEnum("MisfitDefinitionenum")[0]
721 def MisfitModelEnumEnum(): return StringToEnum("MisfitModelEnum")[0]
722Index: ../trunk-jpl/src/m/enum/NodalvalueModelEnumEnum.m
723===================================================================
724--- ../trunk-jpl/src/m/enum/NodalvalueModelEnumEnum.m (revision 0)
725+++ ../trunk-jpl/src/m/enum/NodalvalueModelEnumEnum.m (revision 20038)
726@@ -0,0 +1,11 @@
727+function macro=NodalvalueModelEnumEnum()
728+%NODALVALUEMODELENUMENUM - Enum of NodalvalueModel
729+%
730+% WARNING: DO NOT MODIFY THIS FILE
731+% this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
732+% Please read src/c/shared/Enum/README for more information
733+%
734+% Usage:
735+% macro=NodalvalueModelEnumEnum()
736+
737+macro=StringToEnum('NodalvalueModel');
738Index: ../trunk-jpl/src/m/enum/NodalvalueNameEnum.m
739===================================================================
740--- ../trunk-jpl/src/m/enum/NodalvalueNameEnum.m (revision 0)
741+++ ../trunk-jpl/src/m/enum/NodalvalueNameEnum.m (revision 20038)
742@@ -0,0 +1,11 @@
743+function macro=NodalvalueNameEnum()
744+%NODALVALUENAMEENUM - Enum of NodalvalueName
745+%
746+% WARNING: DO NOT MODIFY THIS FILE
747+% this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
748+% Please read src/c/shared/Enum/README for more information
749+%
750+% Usage:
751+% macro=NodalvalueNameEnum()
752+
753+macro=StringToEnum('NodalvalueName');
Note: See TracBrowser for help on using the repository browser.