public Derivative(Function baseFunc, Enums.eDerivativePower derivativePower, Enums.eDerivativeType derivativeType) : base(DetermineDerivationHMethod(derivativePower, derivativeType), true) { baseFunction = baseFunc; eDerivativePower = derivativePower; eDerivativeType = derivativeType; }
private static string DetermineDerivationHMethod(Enums.eDerivativePower derivativePower, Enums.eDerivativeType derivativeType) { switch (derivativeType) { case Enums.eDerivativeType.eNormal: switch (derivativePower) { case Enums.eDerivativePower.eFirstDerivative: return(nonPartialFirstDerivativeHMethod); case Enums.eDerivativePower.eSecondDerivative: return(secondDerivativeHMethod); } break; case Enums.eDerivativeType.ePartial: switch (derivativePower) { case Enums.eDerivativePower.eFirstDerivative: return(partialFirstDerivativeHMethod); case Enums.eDerivativePower.eSecondDerivative: return(partialSecondDerivativeXXHMethod); } break; } return(""); }