/// <summary>Initializes the <see cref="MatrixSpecialFunction"/> class. /// </summary> /// <remarks>This constructor takes into account the Managed Extensibility Framework (MEF) with respect to <see cref="LowLevelMathConfiguration"/>.</remarks> static MatrixSpecialFunction() { ILibrary matrixSpecialFunctionLibrary = null; try { matrixSpecialFunctionLibrary = LowLevelMathConfiguration.MatrixSpecialFunction.CreateFromConfigurationFile(); if (matrixSpecialFunctionLibrary == null) { matrixSpecialFunctionLibrary = LowLevelMathConfiguration.MatrixSpecialFunction.Libraries.BuildIn; Logger.Stream.LogError(LowLevelMathConfigurationResources.LogFileMessageConfigFileUseDefaultImplementation, "MatrixSpecialFunction"); } } catch (Exception e) { /* thrown of Exceptions in static constructors should be avoided: */ Logger.Stream.LogError(e, LowLevelMathConfigurationResources.LogFileMessageCorruptConfigFile); matrixSpecialFunctionLibrary = LowLevelMathConfiguration.MatrixSpecialFunction.Libraries.BuildIn; Logger.Stream.LogError(LowLevelMathConfigurationResources.LogFileMessageConfigFileUseDefaultImplementation, "MatrixSpecialFunction"); } ForQuadraticDenseArguments = matrixSpecialFunctionLibrary.QuadraticDenseLibrary; matrixSpecialFunctionLibrary.Initialize(); }
/// <summary>Initializes a new instance of the <see cref="NoneBuildInMatrixSpecialFunction" /> class. /// </summary> internal NoneBuildInMatrixSpecialFunction() { Name = new IdentifierString("None"); m_QuadraticDenseLibrary = new DummyBuildInQuadraticDenseMatrixMathLibrary(); }