Changeset 18593
- Timestamp:
- 10/08/14 09:26:16 (11 years ago)
- Location:
- issm/trunk-jpl
- Files:
-
- 6 added
- 4 deleted
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/Makefile.am
r18529 r18593 657 657 issm_sources += ./analyses/ThermalAnalysis.cpp 658 658 endif 659 if SMOOTHEDSURFACESLOPEX 660 issm_sources += ./analyses/SmoothedSurfaceSlopeXAnalysis.cpp 661 endif 662 if SMOOTHEDSURFACESLOPEY 663 issm_sources += ./analyses/SmoothedSurfaceSlopeYAnalysis.cpp 659 if SMOOTH 660 issm_sources += ./analyses/SmoothAnalysis.cpp 664 661 endif 665 662 if MESHDEFORMATION -
issm/trunk-jpl/src/c/analyses/BalancevelocityAnalysis.cpp
r18068 r18593 95 95 96 96 /*Get vector N for all nodes and build HNx and HNy*/ 97 element->GetInputListOnNodes(Nx, SurfaceSlopeXEnum);98 element->GetInputListOnNodes(Ny, SurfaceSlopeYEnum);97 element->GetInputListOnNodes(Nx,DrivingStressXEnum); 98 element->GetInputListOnNodes(Ny,DrivingStressYEnum); 99 99 element->GetInputListOnNodes(H,ThicknessEnum); 100 100 for(int i=0;i<numnodes;i++){ … … 190 190 191 191 /*Get vector N for all nodes*/ 192 basalelement->GetInputListOnNodes(Nx, SurfaceSlopeXEnum);193 basalelement->GetInputListOnNodes(Ny, SurfaceSlopeYEnum);192 basalelement->GetInputListOnNodes(Nx,DrivingStressXEnum); 193 basalelement->GetInputListOnNodes(Ny,DrivingStressYEnum); 194 194 basalelement->GetInputListOnNodes(H,ThicknessEnum); 195 195 for(int i=0;i<numnodes;i++){ -
issm/trunk-jpl/src/c/analyses/EnumToAnalysis.cpp
r18492 r18593 86 86 case DepthAverageAnalysisEnum : return new DepthAverageAnalysis(); 87 87 #endif 88 #ifdef _HAVE_SMOOTHEDSURFACESLOPEX_ 89 case SmoothedSurfaceSlopeXAnalysisEnum : return new SmoothedSurfaceSlopeXAnalysis(); 90 #endif 91 #ifdef _HAVE_SMOOTHEDSURFACESLOPEY_ 92 case SmoothedSurfaceSlopeYAnalysisEnum : return new SmoothedSurfaceSlopeYAnalysis(); 88 #ifdef _HAVE_SMOOTH_ 89 case SmoothAnalysisEnum : return new SmoothAnalysis(); 93 90 #endif 94 91 #ifdef _HAVE_THERMAL_ -
issm/trunk-jpl/src/c/analyses/L2ProjectionBaseAnalysis.cpp
r18057 r18593 93 93 94 94 /*Initialize Element vector*/ 95 ElementMatrix* Ke = basalelement->NewElementMatrix( NoneApproximationEnum);95 ElementMatrix* Ke = basalelement->NewElementMatrix(); 96 96 IssmDouble* basis = xNew<IssmDouble>(numnodes); 97 97 -
issm/trunk-jpl/src/c/analyses/analyses.h
r18492 r18593 32 32 #include "./MeltingAnalysis.h" 33 33 #include "./MeshdeformationAnalysis.h" 34 #include "./SmoothedSurfaceSlopeXAnalysis.h" 35 #include "./SmoothedSurfaceSlopeYAnalysis.h" 34 #include "./SmoothAnalysis.h" 36 35 #include "./SeaiceAnalysis.h" 37 36 #include "./StressbalanceAnalysis.h" -
issm/trunk-jpl/src/c/classes/FemModel.cpp
r18573 r18593 475 475 case BalancevelocitySolutionEnum: 476 476 analyses_temp[numanalyses++]=BalancevelocityAnalysisEnum; 477 analyses_temp[numanalyses++]=SmoothedSurfaceSlopeXAnalysisEnum; 478 analyses_temp[numanalyses++]=SmoothedSurfaceSlopeYAnalysisEnum; 477 analyses_temp[numanalyses++]=SmoothAnalysisEnum; 479 478 break; 480 479 -
issm/trunk-jpl/src/c/cores/balancevelocity_core.cpp
r16529 r18593 19 19 20 20 if(VerboseSolution()) _printf0_("computing smoothed slopes:\n"); 21 femmodel->SetCurrentConfiguration(SmoothedSurfaceSlopeXAnalysisEnum); 21 femmodel->SetCurrentConfiguration(SmoothAnalysisEnum); 22 femmodel->parameters->SetParam(DrivingStressXEnum,InputToSmoothEnum); 22 23 solutionsequence_linear(femmodel); 23 femmodel-> SetCurrentConfiguration(SmoothedSurfaceSlopeYAnalysisEnum);24 femmodel->parameters->SetParam(DrivingStressYEnum,InputToSmoothEnum); 24 25 solutionsequence_linear(femmodel); 25 //surfaceslope_core(femmodel);26 26 27 27 if(VerboseSolution()) _printf0_("call computational core:\n"); … … 31 31 if(save_results){ 32 32 if(VerboseSolution()) _printf0_(" saving results\n"); 33 int outputs[3] = { SurfaceSlopeXEnum,SurfaceSlopeYEnum,VelEnum};33 int outputs[3] = {DrivingStressXEnum,DrivingStressYEnum,VelEnum}; 34 34 femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3); 35 35 } -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r18581 r18593 388 388 SteadystateSolutionEnum, 389 389 SurfaceSlopeSolutionEnum, 390 SmoothedSurfaceSlopeXAnalysisEnum, 391 SmoothedSurfaceSlopeYAnalysisEnum, 390 SmoothAnalysisEnum, 392 391 ThermalAnalysisEnum, 393 392 ThermalSolutionEnum, … … 450 449 InputToL2ProjectEnum, 451 450 InputToDepthaverageEnum, 451 InputToSmoothEnum, 452 452 IntParamEnum, 453 453 IntVecParamEnum, … … 563 563 HydrologyWaterVxEnum, 564 564 HydrologyWaterVyEnum, 565 DrivingStressXEnum, 566 DrivingStressYEnum, 565 567 SigmaNNEnum, 566 568 StressTensorEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r18581 r18593 391 391 case SteadystateSolutionEnum : return "SteadystateSolution"; 392 392 case SurfaceSlopeSolutionEnum : return "SurfaceSlopeSolution"; 393 case SmoothedSurfaceSlopeXAnalysisEnum : return "SmoothedSurfaceSlopeXAnalysis"; 394 case SmoothedSurfaceSlopeYAnalysisEnum : return "SmoothedSurfaceSlopeYAnalysis"; 393 case SmoothAnalysisEnum : return "SmoothAnalysis"; 395 394 case ThermalAnalysisEnum : return "ThermalAnalysis"; 396 395 case ThermalSolutionEnum : return "ThermalSolution"; … … 447 446 case InputToL2ProjectEnum : return "InputToL2Project"; 448 447 case InputToDepthaverageEnum : return "InputToDepthaverage"; 448 case InputToSmoothEnum : return "InputToSmooth"; 449 449 case IntParamEnum : return "IntParam"; 450 450 case IntVecParamEnum : return "IntVecParam"; … … 554 554 case HydrologyWaterVxEnum : return "HydrologyWaterVx"; 555 555 case HydrologyWaterVyEnum : return "HydrologyWaterVy"; 556 case DrivingStressXEnum : return "DrivingStressX"; 557 case DrivingStressYEnum : return "DrivingStressY"; 556 558 case SigmaNNEnum : return "SigmaNN"; 557 559 case StressTensorEnum : return "StressTensor"; -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r18581 r18593 400 400 else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum; 401 401 else if (strcmp(name,"SurfaceSlopeSolution")==0) return SurfaceSlopeSolutionEnum; 402 else if (strcmp(name,"SmoothedSurfaceSlopeXAnalysis")==0) return SmoothedSurfaceSlopeXAnalysisEnum; 403 else if (strcmp(name,"SmoothedSurfaceSlopeYAnalysis")==0) return SmoothedSurfaceSlopeYAnalysisEnum; 402 else if (strcmp(name,"SmoothAnalysis")==0) return SmoothAnalysisEnum; 404 403 else if (strcmp(name,"ThermalAnalysis")==0) return ThermalAnalysisEnum; 405 404 else if (strcmp(name,"ThermalSolution")==0) return ThermalSolutionEnum; … … 456 455 else if (strcmp(name,"InputToL2Project")==0) return InputToL2ProjectEnum; 457 456 else if (strcmp(name,"InputToDepthaverage")==0) return InputToDepthaverageEnum; 457 else if (strcmp(name,"InputToSmooth")==0) return InputToSmoothEnum; 458 458 else if (strcmp(name,"IntParam")==0) return IntParamEnum; 459 459 else if (strcmp(name,"IntVecParam")==0) return IntVecParamEnum; … … 566 566 else if (strcmp(name,"HydrologyWaterVx")==0) return HydrologyWaterVxEnum; 567 567 else if (strcmp(name,"HydrologyWaterVy")==0) return HydrologyWaterVyEnum; 568 else if (strcmp(name,"DrivingStressX")==0) return DrivingStressXEnum; 569 else if (strcmp(name,"DrivingStressY")==0) return DrivingStressYEnum; 568 570 else if (strcmp(name,"SigmaNN")==0) return SigmaNNEnum; 569 571 else if (strcmp(name,"StressTensor")==0) return StressTensorEnum; … … 627 629 else if (strcmp(name,"WaterColumnOld")==0) return WaterColumnOldEnum; 628 630 else if (strcmp(name,"Outputdefinition")==0) return OutputdefinitionEnum; 629 else if (strcmp(name,"OutputdefinitionList")==0) return OutputdefinitionListEnum;630 else if (strcmp(name,"Massfluxatgate")==0) return MassfluxatgateEnum;631 631 else stage=6; 632 632 } 633 633 if(stage==6){ 634 if (strcmp(name,"MassfluxatgateName")==0) return MassfluxatgateNameEnum; 634 if (strcmp(name,"OutputdefinitionList")==0) return OutputdefinitionListEnum; 635 else if (strcmp(name,"Massfluxatgate")==0) return MassfluxatgateEnum; 636 else if (strcmp(name,"MassfluxatgateName")==0) return MassfluxatgateNameEnum; 635 637 else if (strcmp(name,"MassfluxatgateSegments")==0) return MassfluxatgateSegmentsEnum; 636 638 else if (strcmp(name,"MisfitName")==0) return MisfitNameEnum; … … 750 752 else if (strcmp(name,"SurfaceforcingsRhoAir")==0) return SurfaceforcingsRhoAirEnum; 751 753 else if (strcmp(name,"SurfaceforcingsAirCoef")==0) return SurfaceforcingsAirCoefEnum; 752 else if (strcmp(name,"SurfaceforcingsAirLinDragCoef")==0) return SurfaceforcingsAirLinDragCoefEnum;753 else if (strcmp(name,"SurfaceforcingsAirQuadDragCoef")==0) return SurfaceforcingsAirQuadDragCoefEnum;754 754 else stage=7; 755 755 } 756 756 if(stage==7){ 757 if (strcmp(name,"SurfaceforcingsWindVx")==0) return SurfaceforcingsWindVxEnum; 757 if (strcmp(name,"SurfaceforcingsAirLinDragCoef")==0) return SurfaceforcingsAirLinDragCoefEnum; 758 else if (strcmp(name,"SurfaceforcingsAirQuadDragCoef")==0) return SurfaceforcingsAirQuadDragCoefEnum; 759 else if (strcmp(name,"SurfaceforcingsWindVx")==0) return SurfaceforcingsWindVxEnum; 758 760 else if (strcmp(name,"SurfaceforcingsWindVy")==0) return SurfaceforcingsWindVyEnum; 759 761 else if (strcmp(name,"Matseaice")==0) return MatseaiceEnum; -
issm/trunk-jpl/src/m/classes/inversionvalidation.m
r18476 r18593 18 18 vel_obs = NaN 19 19 thickness_obs = NaN 20 surface_obs = NaN 20 21 end 21 22 methods … … 54 55 md = checkfield(md,'fieldname','inversion.control_parameters','cell',1,'values',... 55 56 {'BalancethicknessThickeningRate' 'FrictionCoefficient' 'MaterialsRheologyBbar' 'DamageDbar' 'Vx' 'Vy' 'Thickness',... 56 'Balancethickness Nu' 'BalancethicknessApparentMassbalance'});57 'BalancethicknessOmega' 'BalancethicknessApparentMassbalance'}); 57 58 md = checkfield(md,'fieldname','inversion.cost_functions','size',[1 num_costfunc],'values',[101:105 201 501:506 601:604]); 58 59 md = checkfield(md,'fieldname','inversion.cost_functions_coefficients','size',[md.mesh.numberofvertices num_costfunc],'>=',0); … … 84 85 fielddisplay(obj,'vel_obs','observed velocity magnitude [m/yr]'); 85 86 fielddisplay(obj,'thickness_obs','observed thickness [m]'); 87 fielddisplay(obj,'surface_obs','observed surface elevation [m]'); 86 88 disp('Available cost functions:'); 87 89 disp(' 101: SurfaceAbsVelMisfit'); … … 115 117 end 116 118 WriteData(fid,'object',obj,'class','inversion','fieldname','thickness_obs','format','DoubleMat','mattype',mattype); 119 WriteData(fid,'object',obj,'class','inversion','fieldname','surface_obs','format','DoubleMat','mattype',mattype); 117 120 118 121 %process control parameters … … 140 143 pos=find(obj.cost_functions==505); data(pos)=ThicknessAcrossGradientEnum(); 141 144 pos=find(obj.cost_functions==506); data(pos)=BalancethicknessMisfitEnum(); 145 pos=find(obj.cost_functions==601); data(pos)=SurfaceAbsMisfitEnum(); 142 146 WriteData(fid,'data',data,'enum',InversionCostFunctionsEnum(),'format','DoubleMat','mattype',3); 143 147 WriteData(fid,'data',num_cost_functions,'enum',InversionNumCostFunctionsEnum(),'format','Integer'); -
issm/trunk-jpl/src/m/enum/EnumDefinitions.py
r18580 r18593 383 383 def SteadystateSolutionEnum(): return StringToEnum("SteadystateSolution")[0] 384 384 def SurfaceSlopeSolutionEnum(): return StringToEnum("SurfaceSlopeSolution")[0] 385 def SmoothedSurfaceSlopeXAnalysisEnum(): return StringToEnum("SmoothedSurfaceSlopeXAnalysis")[0] 386 def SmoothedSurfaceSlopeYAnalysisEnum(): return StringToEnum("SmoothedSurfaceSlopeYAnalysis")[0] 385 def SmoothAnalysisEnum(): return StringToEnum("SmoothAnalysis")[0] 387 386 def ThermalAnalysisEnum(): return StringToEnum("ThermalAnalysis")[0] 388 387 def ThermalSolutionEnum(): return StringToEnum("ThermalSolution")[0] … … 439 438 def InputToL2ProjectEnum(): return StringToEnum("InputToL2Project")[0] 440 439 def InputToDepthaverageEnum(): return StringToEnum("InputToDepthaverage")[0] 440 def InputToSmoothEnum(): return StringToEnum("InputToSmooth")[0] 441 441 def IntParamEnum(): return StringToEnum("IntParam")[0] 442 442 def IntVecParamEnum(): return StringToEnum("IntVecParam")[0] … … 546 546 def HydrologyWaterVxEnum(): return StringToEnum("HydrologyWaterVx")[0] 547 547 def HydrologyWaterVyEnum(): return StringToEnum("HydrologyWaterVy")[0] 548 def DrivingStressXEnum(): return StringToEnum("DrivingStressX")[0] 549 def DrivingStressYEnum(): return StringToEnum("DrivingStressY")[0] 548 550 def SigmaNNEnum(): return StringToEnum("SigmaNN")[0] 549 551 def StressTensorEnum(): return StringToEnum("StressTensor")[0] -
issm/trunk-jpl/test/NightlyRun/test530.m
r16044 r18593 7 7 8 8 %Fields and tolerances to track changes 9 field_names ={' SurfaceSlopeX','SurfaceSlopeX','Vel'};9 field_names ={'DrivingStressX','DrivingStressX','Vel'}; 10 10 field_tolerances={1e-13,1e-13,1e-13}; 11 11 field_values={... 12 (md.results.BalancevelocitySolution. SurfaceSlopeX),...13 (md.results.BalancevelocitySolution. SurfaceSlopeY),...12 (md.results.BalancevelocitySolution.DrivingStressX),... 13 (md.results.BalancevelocitySolution.DrivingStressY),... 14 14 (md.results.BalancevelocitySolution.Vel),... 15 15 }; -
issm/trunk-jpl/test/NightlyRun/test530.py
r16044 r18593 16 16 17 17 # Fields and tolerances to track changes 18 field_names =[' SurfaceSlopeX','SurfaceSlopeY','Vel']18 field_names =['DrivingStressX','DrivingStressY','Vel'] 19 19 field_tolerances=[1e-13,1e-13,1e-13] 20 20 field_values=[\ 21 md.results.BalancevelocitySolution. SurfaceSlopeX,\22 md.results.BalancevelocitySolution. SurfaceSlopeY,\21 md.results.BalancevelocitySolution.DrivingStressX,\ 22 md.results.BalancevelocitySolution.DrivingStressY,\ 23 23 md.results.BalancevelocitySolution.Vel,\ 24 24 ] -
issm/trunk-jpl/test/NightlyRun/test531.m
r16044 r18593 9 9 10 10 %Fields and tolerances to track changes 11 field_names ={' SurfaceSlopeX','SurfaceSlopeX','Vel'};11 field_names ={'DrivingStressX','DrivingStressX','Vel'}; 12 12 field_tolerances={1e-13,1e-13,1e-13}; 13 13 field_values={... 14 (md.results.BalancevelocitySolution. SurfaceSlopeX),...15 (md.results.BalancevelocitySolution. SurfaceSlopeY),...14 (md.results.BalancevelocitySolution.DrivingStressX),... 15 (md.results.BalancevelocitySolution.DrivingStressY),... 16 16 (md.results.BalancevelocitySolution.Vel),... 17 17 }; -
issm/trunk-jpl/test/NightlyRun/test531.py
r16044 r18593 18 18 19 19 # Fields and tolerances to track changes 20 field_names =[' SurfaceSlopeX','SurfaceSlopeY','Vel']20 field_names =['DrivingStressX','DrivingStressY','Vel'] 21 21 field_tolerances=[1e-13,1e-13,1e-13] 22 22 field_values=[\ 23 md.results.BalancevelocitySolution. SurfaceSlopeX,\24 md.results.BalancevelocitySolution. SurfaceSlopeY,\23 md.results.BalancevelocitySolution.DrivingStressX,\ 24 md.results.BalancevelocitySolution.DrivingStressY,\ 25 25 md.results.BalancevelocitySolution.Vel,\ 26 26 ]
Note:
See TracChangeset
for help on using the changeset viewer.