// DECISION VARIABLES RContinuousDecisionVariable |ObjectName: x1 |CurrentValue: 0 RContinuousDecisionVariable |ObjectName: x2 |CurrentValue: 0 // CONSTANTS RConstant |ObjectName: k1 |CurrentValue: 100.0 RConstant |ObjectName: k2 |CurrentValue: 90.0 RConstant |ObjectName: Fx1 |CurrentValue: 20.0 RConstant |ObjectName: Fx2 |CurrentValue: 40.0 // EXPRESSIONS RAlgebraicExpressionModel |ObjectName: potentialEnergy |Expression: k1 * ( sqrt( x1^2 + (x2+1)^2 ) - 1 )^2 + k2 * ( sqrt( x1^2 + (x2-1)^2 ) - 1 )^2 - ( Fx1 * x1 + Fx2 * x2 ) // OPTIMIZATION MODEL ROptimizationModel |ObjectName: myOptModel |OutputLevel: Maximum |Objective: potentialEnergyResponse |OptimizationAlgorithm: theOptimizationAlgorithm // OPTIMIZATION ALGORITHM //RDirectionalLineSearchOptimizationAlgorithm |ObjectName: theOptimizationAlgorithm |OutputLevel: Maximum |MaxSteps: 50 |SearchDirection: theSearchDirection |LineSearchAlgorithm: theLineSearchAlgorithm |MeritFunction: theMeritFunction |ConvergenceCheck: theConvergenceCheck RDownhillSimplexOptimizationAlgorithm |ObjectName: theOptimizationAlgorithm |OutputLevel: Maximum |Alpha: 1 |Gamma: 2 |Rho: -0.5 |Sigma: -0.5 |MaxSteps: 50 |Tolerance: 0.001 |Delay: 1.0 // SEARCH DIRECTION //RSteepestDescentSearchDirection |ObjectName: theSearchDirection |OutputLevel: Maximum //RConjugateGradientSearchDirection |ObjectName: theSearchDirection |OutputLevel: Maximum RQuasiNewtonSearchDirection |ObjectName: theSearchDirection |OutputLevel: Maximum |Type: Broyden // STEP SIZE //RPlottingLineSearchAlgorithm |ObjectName: theLineSearchAlgorithm |From: 0 |To: 0.01 //RFixedLineSearchAlgorithm |ObjectName: theLineSearchAlgorithm |FixedResult: 0.001 RGoldenSectionLineSearchAlgorithm |ObjectName: theLineSearchAlgorithm |OutputLevel: Medium |LowerBound: 0 |UpperBound: 10 |MaxIterations: 100 |Tolerance: 0.0001 // MERIT FUNCTION RObjectiveMeritFunction |ObjectName: theMeritFunction // CONVERGENCE CHECK RGradientNormConvergenceCheck |ObjectName: theConvergenceCheck |OutputLevel: Minimum |Tolerance: 0.05