<s> from __future__ import print_function <EOL> from __future__ import unicode_literals <EOL> from __future__ import absolute_import <EOL> import sys , os <EOL> if os . path . join ( sys . path [ <NUM_LIT:0> ] [ : sys . path [ <NUM_LIT:0> ] . rfind ( os . sep ) ] , '<STR_LIT:..>' ) not in sys . path : <EOL> sys . path . append ( os . path . join ( sys . path [ <NUM_LIT:0> ] [ : sys . path [ <NUM_LIT:0> ] . rfind ( os . sep ) ] , '<STR_LIT:..>' ) ) <EOL> import pyeq2 <EOL> import numpy <EOL> numpy . seterr ( all = '<STR_LIT:ignore>' ) <EOL> import pyeq2 . Model_2D_BaseClass <EOL> class Geometric_Modified ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = True <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> independentData1CannotContainBothPositiveAndNegativeFlag = True <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> try : <EOL> temp = a * numpy . power ( x_in , ( b / x_in ) ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerA_Modified ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def __init__ ( self , inFittingTarget = '<STR_LIT>' , inExtendedVersionName = '<STR_LIT>' ) : <EOL> pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass . __init__ ( self , inFittingTarget , inExtendedVersionName ) <EOL> self . lowerCoefficientBounds = [ None , <NUM_LIT:0.0> ] <EOL> self . extendedVersionHandler . AppendAdditionalCoefficientBounds ( self ) <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> try : <EOL> temp = a * numpy . power ( b , x_in ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerA_Modified_Transform ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' , '<STR_LIT:c>' , '<STR_LIT:d>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> c = inCoeffs [ <NUM_LIT:2> ] <EOL> d = inCoeffs [ <NUM_LIT:3> ] <EOL> try : <EOL> temp = a * numpy . power ( b , c * x_in + d ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerB_Modified ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = False <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = True <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = True <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . LogX ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_LogX = inDataCacheDictionary [ '<STR_LIT>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> try : <EOL> temp = numpy . power ( a , x_LogX ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerB_Modified_Transform ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' , '<STR_LIT:c>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = False <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> c = inCoeffs [ <NUM_LIT:2> ] <EOL> try : <EOL> temp = numpy . power ( a , numpy . log ( b * x_in + c ) ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerC_Modified ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = False <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> try : <EOL> temp = numpy . power ( a + x_in , b ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerC_Modified_Transform ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' , '<STR_LIT:c>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = False <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> c = inCoeffs [ <NUM_LIT:2> ] <EOL> try : <EOL> temp = numpy . power ( a + b * x_in , c ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerLawExponentialCutoff ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT>' <EOL> _coefficientDesignators = [ '<STR_LIT:C>' , '<STR_LIT:T>' , '<STR_LIT>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = True <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> C = inCoeffs [ <NUM_LIT:0> ] <EOL> T = inCoeffs [ <NUM_LIT:1> ] <EOL> K = inCoeffs [ <NUM_LIT:2> ] <EOL> try : <EOL> temp = C * numpy . power ( x_in , - <NUM_LIT:1.0> * T ) * numpy . exp ( - <NUM_LIT:1.0> * x_in / K ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class PowerRoot ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = False <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = True <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . PowX ( NameOrValueFlag = <NUM_LIT:1> , args = [ - <NUM_LIT:1.0> ] ) , [ - <NUM_LIT:1.0> ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> PowX_Neg1 = inDataCacheDictionary [ '<STR_LIT>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> try : <EOL> temp = numpy . power ( a , PowX_Neg1 ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class SimplePower ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = False <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = False <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = True <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> try : <EOL> temp = numpy . power ( x_in , a ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class StandardGeometric ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = True <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> try : <EOL> temp = a * numpy . power ( x_in , ( b * x_in ) ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class StandardPower ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = False <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = True <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> try : <EOL> temp = a * numpy . power ( x_in , b ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s <EOL> class XShiftedPower ( pyeq2 . Model_2D_BaseClass . Model_2D_BaseClass ) : <EOL> _baseName = "<STR_LIT>" <EOL> _HTML = '<STR_LIT>' <EOL> _leftSideHTML = '<STR_LIT:y>' <EOL> _coefficientDesignators = [ '<STR_LIT:a>' , '<STR_LIT:b>' , '<STR_LIT:c>' ] <EOL> _canLinearSolverBeUsedForSSQABS = False <EOL> webReferenceURL = '<STR_LIT>' <EOL> baseEquationHasGlobalMultiplierOrDivisor_UsedInExtendedVersions = True <EOL> autoGenerateOffsetForm = True <EOL> autoGenerateReciprocalForm = True <EOL> autoGenerateInverseForms = True <EOL> autoGenerateGrowthAndDecayForms = True <EOL> independentData1CannotContainZeroFlag = False <EOL> independentData1CannotContainPositiveFlag = False <EOL> independentData1CannotContainNegativeFlag = False <EOL> independentData2CannotContainZeroFlag = False <EOL> independentData2CannotContainPositiveFlag = False <EOL> independentData2CannotContainNegativeFlag = False <EOL> def GetDataCacheFunctions ( self ) : <EOL> functionList = [ ] <EOL> functionList . append ( [ pyeq2 . DataCache . DataCacheFunctions . X ( NameOrValueFlag = <NUM_LIT:1> ) , [ ] ] ) <EOL> return self . extendedVersionHandler . GetAdditionalDataCacheFunctions ( self , functionList ) <EOL> def CalculateModelPredictions ( self , inCoeffs , inDataCacheDictionary ) : <EOL> x_in = inDataCacheDictionary [ '<STR_LIT:X>' ] <EOL> a = inCoeffs [ <NUM_LIT:0> ] <EOL> b = inCoeffs [ <NUM_LIT:1> ] <EOL> c = inCoeffs [ <NUM_LIT:2> ] <EOL> try : <EOL> temp = a * numpy . power ( ( x_in - b ) , c ) <EOL> return self . extendedVersionHandler . GetAdditionalModelPredictions ( temp , inCoeffs , inDataCacheDictionary , self ) <EOL> except : <EOL> return numpy . ones ( len ( inDataCacheDictionary [ '<STR_LIT>' ] ) ) * <NUM_LIT> <EOL> def SpecificCodeCPP ( self ) : <EOL> s = "<STR_LIT>" <EOL> return s </s>
