myDefautModel = ot.ExponentiallyDampedCosineModel([2.0], [3.0], 1.5) print('myDefautModel = ', myDefautModel) test_model(myDefautModel) myModel = ot.ExponentiallyDampedCosineModel([2.0] * inputDimension, [3.0], 1.5) test_model(myModel) myDefautModel = ot.SphericalModel([2.0], [3.0], 4.5) print('myDefautModel = ', myDefautModel) test_model(myDefautModel) myModel = ot.SphericalModel([2.0] * inputDimension, [3.0], 4.5) test_model(myModel) myDefautModel = ot.FractionalBrownianMotionModel(2.0, 3.0, 0.25) print('myDefautModel = ', myDefautModel) test_model(myDefautModel) myModel = ot.SphericalModel([2.0] * inputDimension, [3.0], 4.5) test_model(myModel) myDefautModel = ot.DiracCovarianceModel() print('myDefautModel = ', myDefautModel) test_model(myDefautModel) amplitude = [1.5 + 2.0 * k for k in range(2)] dimension = 2 spatialCorrelation = ot.CorrelationMatrix(dimension) for j in range(dimension): for i in range(j + 1, dimension):
import openturns as ot from matplotlib import pyplot as plt from openturns.viewer import View if ot.FractionalBrownianMotionModel().__class__.__name__ == 'ExponentialModel': covarianceModel = ot.ExponentialModel([0.5], [5.0]) elif ot.FractionalBrownianMotionModel( ).__class__.__name__ == 'GeneralizedExponential': covarianceModel = ot.GeneralizedExponential([2.0], [3.0], 1.5) elif ot.FractionalBrownianMotionModel( ).__class__.__name__ == 'ProductCovarianceModel': amplitude = [1.0] scale1 = [4.0] scale2 = [4.0] cov1 = ot.ExponentialModel(scale1, amplitude) cov2 = ot.ExponentialModel(scale2, amplitude) covarianceModel = ot.ProductCovarianceModel([cov1, cov2]) elif ot.FractionalBrownianMotionModel( ).__class__.__name__ == 'RankMCovarianceModel': variance = [1.0, 2.0] basis = ot.LinearBasisFactory().build() covarianceModel = ot.RankMCovarianceModel(variance, basis) else: covarianceModel = ot.FractionalBrownianMotionModel() title = str(covarianceModel)[:100] if covarianceModel.getInputDimension() == 1: scale = covarianceModel.getScale()[0] if covarianceModel.isStationary(): def f(x): return [covarianceModel(x)[0, 0]]
import openturns as ot from math import exp from matplotlib import pyplot as plt from openturns.viewer import View a = 4.0 covarianceModel = ot.FractionalBrownianMotionModel(1.0, 1.0, 0.25) cov_graph = covarianceModel.draw(0, 0, -a, a, 512) fig = plt.figure(figsize=(10, 4)) plt.suptitle(str(covarianceModel)) cov_axis = fig.add_subplot(111) View(cov_graph, figure=fig, axes=[cov_axis], add_legend=False, square_axes=True)
import openturns as ot from matplotlib import pyplot as plt from openturns.viewer import View covarianceModel = ot.FractionalBrownianMotionModel() if covarianceModel.getInputDimension() == 1: scale = covarianceModel.getScale()[0] if covarianceModel.isStationary(): def f(x): return [covarianceModel(x)[0, 0]] func = ot.PythonFunction(1,1,f) func.setDescription(['$tau$', '$cov$']) cov_graph = func.draw(-3.0 * scale, 3.0 * scale, 129) fig = plt.figure(figsize=(10, 4)) plt.suptitle(str(covarianceModel)) cov_axis = fig.add_subplot(111) View(cov_graph, figure=fig, axes=[cov_axis], add_legend=False) else: def f(x): return [covarianceModel([x[0]], [x[1]])[0, 0]] func = ot.PythonFunction(2,1,f) func.setDescription(['$s$', '$t$', '$cov$']) cov_graph = func.draw([-3.0 * scale]*2, [3.0 * scale]*2, [129]*2) fig = plt.figure(figsize=(10, 4)) plt.suptitle(str(covarianceModel)) cov_axis = fig.add_subplot(111) View(cov_graph, figure=fig, axes=[cov_axis], add_legend=False, square_axes=True)