Changeset 27758


Ignore:
Timestamp:
05/17/23 11:03:26 (22 months ago)
Author:
Mathieu Morlighem
Message:

CHG: preparing for new expected initial decrease in J

Location:
issm/trunk-jpl/src/c
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/cores/controladm1qn3_core.cpp

    r27756 r27758  
    588588        indic = 4; /*gradient required*/
    589589        simul_ad(&indic,&n,X,&f,G,izs,rzs,(void*)&mystruct);
     590
    590591        /*Estimation of the expected decrease in f during the first iteration*/
    591         double df1=f;
     592        double dfminFrac = 1.; /*Expected reduction of J*/
     593        double df1=dfminFrac*f;
    592594
    593595        /*Call M1QN3 solver*/
  • issm/trunk-jpl/src/c/cores/controlm1qn3_core.cpp

    r27386 r27758  
    122122
    123123        /*Estimation of the expected decrease in f during the first iteration*/
    124         double df1=f;
     124        double dfminFrac = 1.; /*Expected reduction of J*/
     125        double df1=dfminFrac*f;
    125126
    126127        /*Call M1QN3 solver*/
  • issm/trunk-jpl/src/c/shared/Enum/Enum.vim

    r27709 r27758  
    315315syn keyword cConstant InversionCostFunctionsEnum
    316316syn keyword cConstant InversionDxminEnum
     317syn keyword cConstant InversionDfminFracEnum
    317318syn keyword cConstant InversionGatolEnum
    318319syn keyword cConstant InversionGradientScalingEnum
     
    17721773syn keyword cType Cfsurfacelogvel
    17731774syn keyword cType Cfsurfacesquare
     1775syn keyword cType Cfsurfacesquaretransient
    17741776syn keyword cType Channel
    1775 syn keyword cType classes
    17761777syn keyword cType Constraint
    17771778syn keyword cType Constraints
     
    17811782syn keyword cType ControlParam
    17821783syn keyword cType Covertree
     1784syn keyword cType DataSetParam
    17831785syn keyword cType DatasetInput
    1784 syn keyword cType DataSetParam
    17851786syn keyword cType Definition
    17861787syn keyword cType DependentObject
     
    17951796syn keyword cType ElementInput
    17961797syn keyword cType ElementMatrix
     1798syn keyword cType ElementVector
    17971799syn keyword cType Elements
    1798 syn keyword cType ElementVector
    17991800syn keyword cType ExponentialVariogram
    18001801syn keyword cType ExternalResult
     
    18031804syn keyword cType Friction
    18041805syn keyword cType Gauss
    1805 syn keyword cType GaussianVariogram
    1806 syn keyword cType gaussobjects
    18071806syn keyword cType GaussPenta
    18081807syn keyword cType GaussSeg
    18091808syn keyword cType GaussTetra
    18101809syn keyword cType GaussTria
     1810syn keyword cType GaussianVariogram
    18111811syn keyword cType GenericExternalResult
    18121812syn keyword cType GenericOption
     
    18251825syn keyword cType IssmDirectApplicInterface
    18261826syn keyword cType IssmParallelDirectApplicInterface
    1827 syn keyword cType krigingobjects
    18281827syn keyword cType Load
    18291828syn keyword cType Loads
     
    18361835syn keyword cType Matice
    18371836syn keyword cType Matlitho
    1838 syn keyword cType matrixobjects
    18391837syn keyword cType MatrixParam
    18401838syn keyword cType Misfit
     
    18491847syn keyword cType Observations
    18501848syn keyword cType Option
     1849syn keyword cType OptionUtilities
    18511850syn keyword cType Options
    1852 syn keyword cType OptionUtilities
    18531851syn keyword cType Param
    18541852syn keyword cType Parameters
     
    18641862syn keyword cType Regionaloutput
    18651863syn keyword cType Results
     1864syn keyword cType RiftStruct
    18661865syn keyword cType Riftfront
    1867 syn keyword cType RiftStruct
    18681866syn keyword cType SealevelGeometry
    18691867syn keyword cType Seg
    18701868syn keyword cType SegInput
     1869syn keyword cType SegRef
    18711870syn keyword cType Segment
    1872 syn keyword cType SegRef
    18731871syn keyword cType SpcDynamic
    18741872syn keyword cType SpcStatic
     
    18891887syn keyword cType Vertex
    18901888syn keyword cType Vertices
     1889syn keyword cType classes
     1890syn keyword cType gaussobjects
     1891syn keyword cType krigingobjects
     1892syn keyword cType matrixobjects
    18911893syn keyword cType AdjointBalancethickness2Analysis
    18921894syn keyword cType AdjointBalancethicknessAnalysis
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r27709 r27758  
    309309        InversionCostFunctionsEnum,
    310310        InversionDxminEnum,
     311        InversionDfminFracEnum,
    311312        InversionGatolEnum,
    312313        InversionGradientScalingEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r27709 r27758  
    317317                case InversionCostFunctionsEnum : return "InversionCostFunctions";
    318318                case InversionDxminEnum : return "InversionDxmin";
     319                case InversionDfminFracEnum : return "InversionDfminFrac";
    319320                case InversionGatolEnum : return "InversionGatol";
    320321                case InversionGradientScalingEnum : return "InversionGradientScaling";
  • issm/trunk-jpl/src/c/shared/Enum/Enumjl.vim

    r27709 r27758  
    308308syn keyword juliaConstC InversionCostFunctionsEnum
    309309syn keyword juliaConstC InversionDxminEnum
     310syn keyword juliaConstC InversionDfminFracEnum
    310311syn keyword juliaConstC InversionGatolEnum
    311312syn keyword juliaConstC InversionGradientScalingEnum
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r27709 r27758  
    323323              else if (strcmp(name,"InversionCostFunctions")==0) return InversionCostFunctionsEnum;
    324324              else if (strcmp(name,"InversionDxmin")==0) return InversionDxminEnum;
     325              else if (strcmp(name,"InversionDfminFrac")==0) return InversionDfminFracEnum;
    325326              else if (strcmp(name,"InversionGatol")==0) return InversionGatolEnum;
    326327              else if (strcmp(name,"InversionGradientScaling")==0) return InversionGradientScalingEnum;
     
    382383              else if (strcmp(name,"MasstransportPenaltyFactor")==0) return MasstransportPenaltyFactorEnum;
    383384              else if (strcmp(name,"MasstransportRequestedOutputs")==0) return MasstransportRequestedOutputsEnum;
    384               else if (strcmp(name,"MasstransportStabilization")==0) return MasstransportStabilizationEnum;
    385385         else stage=4;
    386386   }
    387387   if(stage==4){
    388               if (strcmp(name,"MaterialsBeta")==0) return MaterialsBetaEnum;
     388              if (strcmp(name,"MasstransportStabilization")==0) return MasstransportStabilizationEnum;
     389              else if (strcmp(name,"MaterialsBeta")==0) return MaterialsBetaEnum;
    389390              else if (strcmp(name,"MaterialsEarthDensity")==0) return MaterialsEarthDensityEnum;
    390391              else if (strcmp(name,"MaterialsEffectiveconductivityAveraging")==0) return MaterialsEffectiveconductivityAveragingEnum;
     
    505506              else if (strcmp(name,"SolidearthSettingsTimeAcc")==0) return SolidearthSettingsTimeAccEnum;
    506507              else if (strcmp(name,"SolidearthSettingsHoriz")==0) return SolidearthSettingsHorizEnum;
    507               else if (strcmp(name,"SolidearthSettingsMaxiter")==0) return SolidearthSettingsMaxiterEnum;
    508508         else stage=5;
    509509   }
    510510   if(stage==5){
    511               if (strcmp(name,"SolidearthSettingsGrdOcean")==0) return SolidearthSettingsGrdOceanEnum;
     511              if (strcmp(name,"SolidearthSettingsMaxiter")==0) return SolidearthSettingsMaxiterEnum;
     512              else if (strcmp(name,"SolidearthSettingsGrdOcean")==0) return SolidearthSettingsGrdOceanEnum;
    512513              else if (strcmp(name,"SolidearthSettingsOceanAreaScaling")==0) return SolidearthSettingsOceanAreaScalingEnum;
    513514              else if (strcmp(name,"StochasticForcingCovariance")==0) return StochasticForcingCovarianceEnum;
     
    628629              else if (strcmp(name,"SteadystateNumRequestedOutputs")==0) return SteadystateNumRequestedOutputsEnum;
    629630              else if (strcmp(name,"SteadystateReltol")==0) return SteadystateReltolEnum;
    630               else if (strcmp(name,"SteadystateRequestedOutputs")==0) return SteadystateRequestedOutputsEnum;
    631631         else stage=6;
    632632   }
    633633   if(stage==6){
    634               if (strcmp(name,"Step")==0) return StepEnum;
     634              if (strcmp(name,"SteadystateRequestedOutputs")==0) return SteadystateRequestedOutputsEnum;
     635              else if (strcmp(name,"Step")==0) return StepEnum;
    635636              else if (strcmp(name,"Steps")==0) return StepsEnum;
    636637              else if (strcmp(name,"StressbalanceAbstol")==0) return StressbalanceAbstolEnum;
     
    751752              else if (strcmp(name,"BasalforcingsPicoSubShelfOceanSalinity")==0) return BasalforcingsPicoSubShelfOceanSalinityEnum;
    752753              else if (strcmp(name,"BasalforcingsPicoSubShelfOceanTemp")==0) return BasalforcingsPicoSubShelfOceanTempEnum;
    753               else if (strcmp(name,"BasalStressx")==0) return BasalStressxEnum;
    754754         else stage=7;
    755755   }
    756756   if(stage==7){
    757               if (strcmp(name,"BasalStressy")==0) return BasalStressyEnum;
     757              if (strcmp(name,"BasalStressx")==0) return BasalStressxEnum;
     758              else if (strcmp(name,"BasalStressy")==0) return BasalStressyEnum;
    758759              else if (strcmp(name,"BasalStress")==0) return BasalStressEnum;
    759760              else if (strcmp(name,"Base")==0) return BaseEnum;
     
    874875              else if (strcmp(name,"Gradient")==0) return GradientEnum;
    875876              else if (strcmp(name,"GroundinglineHeight")==0) return GroundinglineHeightEnum;
    876               else if (strcmp(name,"HydraulicPotential")==0) return HydraulicPotentialEnum;
    877877         else stage=8;
    878878   }
    879879   if(stage==8){
    880               if (strcmp(name,"HydraulicPotentialOld")==0) return HydraulicPotentialOldEnum;
     880              if (strcmp(name,"HydraulicPotential")==0) return HydraulicPotentialEnum;
     881              else if (strcmp(name,"HydraulicPotentialOld")==0) return HydraulicPotentialOldEnum;
    881882              else if (strcmp(name,"HydrologyBasalFlux")==0) return HydrologyBasalFluxEnum;
    882883              else if (strcmp(name,"HydrologyBasinsId")==0) return HydrologyBasinsIdEnum;
     
    997998              else if (strcmp(name,"SealevelBarystaticHydroLoad")==0) return SealevelBarystaticHydroLoadEnum;
    998999              else if (strcmp(name,"SealevelBarystaticBpMask")==0) return SealevelBarystaticBpMaskEnum;
    999               else if (strcmp(name,"SealevelBarystaticBpWeights")==0) return SealevelBarystaticBpWeightsEnum;
    10001000         else stage=9;
    10011001   }
    10021002   if(stage==9){
    1003               if (strcmp(name,"SealevelBarystaticBpArea")==0) return SealevelBarystaticBpAreaEnum;
     1003              if (strcmp(name,"SealevelBarystaticBpWeights")==0) return SealevelBarystaticBpWeightsEnum;
     1004              else if (strcmp(name,"SealevelBarystaticBpArea")==0) return SealevelBarystaticBpAreaEnum;
    10041005              else if (strcmp(name,"SealevelBarystaticBpLoad")==0) return SealevelBarystaticBpLoadEnum;
    10051006              else if (strcmp(name,"SealevelBarystaticOceanMask")==0) return SealevelBarystaticOceanMaskEnum;
     
    11201121              else if (strcmp(name,"SmbMassBalance")==0) return SmbMassBalanceEnum;
    11211122              else if (strcmp(name,"SmbMassBalanceSnow")==0) return SmbMassBalanceSnowEnum;
    1122               else if (strcmp(name,"SmbMassBalanceIce")==0) return SmbMassBalanceIceEnum;
    11231123         else stage=10;
    11241124   }
    11251125   if(stage==10){
    1126               if (strcmp(name,"SmbMassBalanceSemic")==0) return SmbMassBalanceSemicEnum;
     1126              if (strcmp(name,"SmbMassBalanceIce")==0) return SmbMassBalanceIceEnum;
     1127              else if (strcmp(name,"SmbMassBalanceSemic")==0) return SmbMassBalanceSemicEnum;
    11271128              else if (strcmp(name,"SmbMassBalanceSubstep")==0) return SmbMassBalanceSubstepEnum;
    11281129              else if (strcmp(name,"SmbMassBalanceTransient")==0) return SmbMassBalanceTransientEnum;
     
    12431244              else if (strcmp(name,"Vel")==0) return VelEnum;
    12441245              else if (strcmp(name,"VxAverage")==0) return VxAverageEnum;
    1245               else if (strcmp(name,"VxBase")==0) return VxBaseEnum;
    12461246         else stage=11;
    12471247   }
    12481248   if(stage==11){
    1249               if (strcmp(name,"VxDebris")==0) return VxDebrisEnum;
     1249              if (strcmp(name,"VxBase")==0) return VxBaseEnum;
     1250              else if (strcmp(name,"VxDebris")==0) return VxDebrisEnum;
    12501251              else if (strcmp(name,"Vx")==0) return VxEnum;
    12511252              else if (strcmp(name,"VxMesh")==0) return VxMeshEnum;
     
    13661367              else if (strcmp(name,"Outputdefinition84")==0) return Outputdefinition84Enum;
    13671368              else if (strcmp(name,"Outputdefinition85")==0) return Outputdefinition85Enum;
    1368               else if (strcmp(name,"Outputdefinition86")==0) return Outputdefinition86Enum;
    13691369         else stage=12;
    13701370   }
    13711371   if(stage==12){
    1372               if (strcmp(name,"Outputdefinition87")==0) return Outputdefinition87Enum;
     1372              if (strcmp(name,"Outputdefinition86")==0) return Outputdefinition86Enum;
     1373              else if (strcmp(name,"Outputdefinition87")==0) return Outputdefinition87Enum;
    13731374              else if (strcmp(name,"Outputdefinition88")==0) return Outputdefinition88Enum;
    13741375              else if (strcmp(name,"Outputdefinition89")==0) return Outputdefinition89Enum;
     
    14891490              else if (strcmp(name,"FSApproximation")==0) return FSApproximationEnum;
    14901491              else if (strcmp(name,"FSSolver")==0) return FSSolverEnum;
    1491               else if (strcmp(name,"FSpressure")==0) return FSpressureEnum;
    14921492         else stage=13;
    14931493   }
    14941494   if(stage==13){
    1495               if (strcmp(name,"FSvelocity")==0) return FSvelocityEnum;
     1495              if (strcmp(name,"FSpressure")==0) return FSpressureEnum;
     1496              else if (strcmp(name,"FSvelocity")==0) return FSvelocityEnum;
    14961497              else if (strcmp(name,"FemModel")==0) return FemModelEnum;
    14971498              else if (strcmp(name,"FileParam")==0) return FileParamEnum;
     
    16121613              else if (strcmp(name,"Matlitho")==0) return MatlithoEnum;
    16131614              else if (strcmp(name,"Mathydro")==0) return MathydroEnum;
    1614               else if (strcmp(name,"MatrixParam")==0) return MatrixParamEnum;
    16151615         else stage=14;
    16161616   }
    16171617   if(stage==14){
    1618               if (strcmp(name,"MaxAbsVx")==0) return MaxAbsVxEnum;
     1618              if (strcmp(name,"MatrixParam")==0) return MatrixParamEnum;
     1619              else if (strcmp(name,"MaxAbsVx")==0) return MaxAbsVxEnum;
    16191620              else if (strcmp(name,"MaxAbsVy")==0) return MaxAbsVyEnum;
    16201621              else if (strcmp(name,"MaxAbsVz")==0) return MaxAbsVzEnum;
     
    17351736              else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum;
    17361737              else if (strcmp(name,"StressIntensityFactor")==0) return StressIntensityFactorEnum;
    1737               else if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
    17381738         else stage=15;
    17391739   }
    17401740   if(stage==15){
    1741               if (strcmp(name,"StressbalanceConvergenceNumSteps")==0) return StressbalanceConvergenceNumStepsEnum;
     1741              if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
     1742              else if (strcmp(name,"StressbalanceConvergenceNumSteps")==0) return StressbalanceConvergenceNumStepsEnum;
    17421743              else if (strcmp(name,"StressbalanceSIAAnalysis")==0) return StressbalanceSIAAnalysisEnum;
    17431744              else if (strcmp(name,"StressbalanceSolution")==0) return StressbalanceSolutionEnum;
Note: See TracChangeset for help on using the changeset viewer.