From 9fb41b689426e15630692befb19bb00685bb6c34 Mon Sep 17 00:00:00 2001 From: Elias Fekhari Date: Sat, 2 May 2020 13:06:19 +0200 Subject: [PATCH 1/5] request class linted --- examples/RequestedBBRCProblem.ipynb | 107 ++++++++++++++++++++++++++++ otbenchmark/RequestedBBRCProblem.py | 97 +++++++++++++++++++++++++ 2 files changed, 204 insertions(+) create mode 100644 examples/RequestedBBRCProblem.ipynb create mode 100644 otbenchmark/RequestedBBRCProblem.py diff --git a/examples/RequestedBBRCProblem.ipynb b/examples/RequestedBBRCProblem.ipynb new file mode 100644 index 0000000..2e6503c --- /dev/null +++ b/examples/RequestedBBRCProblem.ipynb @@ -0,0 +1,107 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analyse du cas R-S et graphiques 2D\n", + "\n", + "L'objectif de cet exemple est de présenter le cas R-S. Nous présentons également des éléments graphiques pour la visualisation de la surface d'état limite en 2 dimensions." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import openturns as ot\n", + "import otbenchmark as otb" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "problem = otb.RequestedBBRCProblem('testuser', 'testpass', -1, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "event = problem.getEvent()\n", + "g = event.getFunction()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "0.0007888456943755395" + }, + "metadata": {}, + "execution_count": 4 + } + ], + "source": [ + "problem.getProbability()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": "[194.65673828125]\n[235.3832550048828]\n[189.3035888671875]\n[339.3806457519531]\n[335.1049499511719]\n[393.9993896484375]\n[202.2191162109375]\n[174.8406524658203]\n[233.7495880126953]\n[350.5472717285156]\n[297.2499694824219]\n[218.2695770263672]\n[200.97616577148438]\n[180.061279296875]\n[242.46978759765625]\n[215.73358154296875]\n[288.48529052734375]\n[331.47735595703125]\n[220.18215942382812]\n[377.397705078125]\n[284.7091979980469]\n[198.75686645507812]\n[221.52423095703125]\n[282.73345947265625]\n[336.52325439453125]\n[326.8697204589844]\n[330.7781982421875]\n[196.94180297851562]\n[385.6677551269531]\n[396.2601623535156]\n[196.18479919433594]\n[299.7452392578125]\n[282.44427490234375]\n[168.36343383789062]\n[389.99871826171875]\n[358.03045654296875]\n[144.5692138671875]\n[255.44900512695312]\n[370.4793701171875]\n[84.9371337890625]\n[238.3543701171875]\n[129.785400390625]\n[196.7244415283203]\n[264.5404052734375]\n[173.18212890625]\n[392.9873046875]\n[185.55714416503906]\n[368.53466796875]\n[283.3665771484375]\n[144.22177124023438]\n[381.55438232421875]\n[381.034423828125]\n[342.9972229003906]\n[266.3590087890625]\n[334.29052734375]\n[117.27037048339844]\n[277.16375732421875]\n[285.12384033203125]\n[362.5998840332031]\n[315.274169921875]\n[247.87791442871094]\n[409.65234375]\n[287.66363525390625]\n[336.37750244140625]\n[394.1182861328125]\n[389.5303955078125]\n[481.17462158203125]\n[290.0679626464844]\n[283.8186950683594]\n[250.89947509765625]\n[302.2703857421875]\n[299.8824462890625]\n[336.5767822265625]\n[186.9788818359375]\n[423.787353515625]\n[262.724609375]\n[274.6841735839844]\n[241.7208709716797]\n[463.33355712890625]\n[322.99566650390625]\n[218.93588256835938]\n[369.7957763671875]\n[429.9096984863281]\n[319.9188232421875]\n[299.20611572265625]\n[257.9948425292969]\n[228.3815460205078]\n[312.2850036621094]\n[370.79949951171875]\n[370.82745361328125]\n[202.61672973632812]\n[361.8753356933594]\n[302.4346923828125]\n[360.74285888671875]\n[300.1701965332031]\n[374.0533447265625]\n[261.635498046875]\n[252.62332153320312]\n[196.39459228515625]\n[382.73199462890625]\n" + } + ], + "source": [ + "# Create the Monte-Carlo algorithm\n", + "algoProb = ot.ProbabilitySimulationAlgorithm(event)\n", + "algoProb.setMaximumOuterSampling(100)\n", + "algoProb.setMaximumCoefficientOfVariation(0.01)\n", + "algoProb.run()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "python3_cours", + "language": "python", + "name": "cours_micka" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.6-final" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/otbenchmark/RequestedBBRCProblem.py b/otbenchmark/RequestedBBRCProblem.py new file mode 100644 index 0000000..3711f1d --- /dev/null +++ b/otbenchmark/RequestedBBRCProblem.py @@ -0,0 +1,97 @@ +#!/usr/bin/python +# coding:utf-8 +# Copyright 2020 EDF +"""Class to define a benchmark problem using http requests from the BBRC 2019 server.""" + +from otbenchmark.ReliabilityBenchmarkProblem import ReliabilityBenchmarkProblem +from otbenchmark import evaluate +import openturns as ot +import pandas as pd +import numpy as np + + +class RequestedBBRCProblem(ReliabilityBenchmarkProblem): + def __init__(self, username, password, set_id, problem_id): + """ + Creates a ot.PythonFunction requesting a BBRC 2019 function using http requests. + References + ---------- + https://rprepo.readthedocs.io/en/latest/ + Parameters + ---------- + username: str + Username required to login the BBRC challenge. + password: str + Password required to login the BBRC challenge. + set_id: int + First item defining the reliability problem selected. + problem_id: int + Second item defining the reliability problem selected. + """ + self.username = username + self.password = password + self.set_id = set_id + self.problem_id = problem_id + + def g_fun(x): + x = np.array(x) + g_val_sys, g_val_comp, msg = evaluate.evaluate( + self.username, self.password, self.set_id, self.problem_id, x + ) + print(g_val_comp) + return g_val_comp + + bbrc_problem_table = pd.DataFrame( + [], + columns=[ + "name", + "set_id", + "problem_id", + "input_dim", + "output_dim", + "beta", + "input_composed_distribution", + ], + ) + bbrc_problem_table = bbrc_problem_table.astype("object") + # import a csv with all the corresponding elements. Next line is for the example + # corresponding to the RP8 + bbrc_problem_table.loc[0] = [ + "RP 8", + -1, + 1, + 6, + 1, + 3.16, + ot.ComposedDistribution( + ( + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(50, 10)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(40, 8)), + ) + ), + ] + bbrc_problem_raw = bbrc_problem_table[ + (bbrc_problem_table["problem_id"] == self.problem_id) + & (bbrc_problem_table["set_id"] == self.set_id) + ] + input_dim = int(bbrc_problem_raw["input_dim"]) + output_dim = int(bbrc_problem_raw["output_dim"]) + inputDistribution = bbrc_problem_raw["input_composed_distribution"][0] + inputRandomVector = ot.RandomVector(inputDistribution) + + limitStateFunction = ot.PythonFunction(input_dim, output_dim, g_fun) + outputRandomVector = ot.CompositeRandomVector( + limitStateFunction, inputRandomVector + ) + thresholdEvent = ot.ThresholdEvent(outputRandomVector, ot.Less(), 0.0) + + name = bbrc_problem_raw["name"] + beta = bbrc_problem_raw["beta"] + probability = ot.Normal().computeComplementaryCDF(beta) + super(RequestedBBRCProblem, self).__init__(name, thresholdEvent, probability) + + return None From 97fb6db12a906a713140ec9749d269ad6f1cb0dc Mon Sep 17 00:00:00 2001 From: Elias Fekhari Date: Sat, 2 May 2020 16:55:42 +0200 Subject: [PATCH 2/5] BBRCDistribution class from the csv table circleci circleci2 circleci3 circleci4 circleci5 circleci6 --- examples/RequestedBBRCProblem.ipynb | 39 +- .../distributions/probabilistic_models.csv | 480 ++++++++++++++++++ .../distributions/probabilistic_models_up.csv | 480 ++++++++++++++++++ otbenchmark/BBRCDistribution.py | 65 +++ otbenchmark/RequestedBBRCProblem.py | 56 +- otbenchmark/__init__.py | 2 + requirements.txt | 1 + 7 files changed, 1053 insertions(+), 70 deletions(-) create mode 100644 examples/distributions/probabilistic_models.csv create mode 100644 examples/distributions/probabilistic_models_up.csv create mode 100644 otbenchmark/BBRCDistribution.py diff --git a/examples/RequestedBBRCProblem.ipynb b/examples/RequestedBBRCProblem.ipynb index 2e6503c..3c0d0d4 100644 --- a/examples/RequestedBBRCProblem.ipynb +++ b/examples/RequestedBBRCProblem.ipynb @@ -4,9 +4,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Analyse du cas R-S et graphiques 2D\n", + "# Test de la classe RequestedBBRCProblem\n", "\n", - "L'objectif de cet exemple est de présenter le cas R-S. Nous présentons également des éléments graphiques pour la visualisation de la surface d'état limite en 2 dimensions." + "L'objectif de cet exemple est de présenter l'utilisation de la classe RequestedBBRCProblem" ] }, { @@ -25,7 +25,7 @@ "metadata": {}, "outputs": [], "source": [ - "problem = otb.RequestedBBRCProblem('testuser', 'testpass', -1, 1)" + "problem = otb.RequestedBBRCProblem(\"testuser\", \"testpass\", -1, 1)" ] }, { @@ -44,12 +44,14 @@ "metadata": {}, "outputs": [ { - "output_type": "execute_result", "data": { - "text/plain": "0.0007888456943755395" + "text/plain": [ + "0.0007888456943755395" + ] }, + "execution_count": 4, "metadata": {}, - "execution_count": 4 + "output_type": "execute_result" } ], "source": [ @@ -58,36 +60,23 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": "[194.65673828125]\n[235.3832550048828]\n[189.3035888671875]\n[339.3806457519531]\n[335.1049499511719]\n[393.9993896484375]\n[202.2191162109375]\n[174.8406524658203]\n[233.7495880126953]\n[350.5472717285156]\n[297.2499694824219]\n[218.2695770263672]\n[200.97616577148438]\n[180.061279296875]\n[242.46978759765625]\n[215.73358154296875]\n[288.48529052734375]\n[331.47735595703125]\n[220.18215942382812]\n[377.397705078125]\n[284.7091979980469]\n[198.75686645507812]\n[221.52423095703125]\n[282.73345947265625]\n[336.52325439453125]\n[326.8697204589844]\n[330.7781982421875]\n[196.94180297851562]\n[385.6677551269531]\n[396.2601623535156]\n[196.18479919433594]\n[299.7452392578125]\n[282.44427490234375]\n[168.36343383789062]\n[389.99871826171875]\n[358.03045654296875]\n[144.5692138671875]\n[255.44900512695312]\n[370.4793701171875]\n[84.9371337890625]\n[238.3543701171875]\n[129.785400390625]\n[196.7244415283203]\n[264.5404052734375]\n[173.18212890625]\n[392.9873046875]\n[185.55714416503906]\n[368.53466796875]\n[283.3665771484375]\n[144.22177124023438]\n[381.55438232421875]\n[381.034423828125]\n[342.9972229003906]\n[266.3590087890625]\n[334.29052734375]\n[117.27037048339844]\n[277.16375732421875]\n[285.12384033203125]\n[362.5998840332031]\n[315.274169921875]\n[247.87791442871094]\n[409.65234375]\n[287.66363525390625]\n[336.37750244140625]\n[394.1182861328125]\n[389.5303955078125]\n[481.17462158203125]\n[290.0679626464844]\n[283.8186950683594]\n[250.89947509765625]\n[302.2703857421875]\n[299.8824462890625]\n[336.5767822265625]\n[186.9788818359375]\n[423.787353515625]\n[262.724609375]\n[274.6841735839844]\n[241.7208709716797]\n[463.33355712890625]\n[322.99566650390625]\n[218.93588256835938]\n[369.7957763671875]\n[429.9096984863281]\n[319.9188232421875]\n[299.20611572265625]\n[257.9948425292969]\n[228.3815460205078]\n[312.2850036621094]\n[370.79949951171875]\n[370.82745361328125]\n[202.61672973632812]\n[361.8753356933594]\n[302.4346923828125]\n[360.74285888671875]\n[300.1701965332031]\n[374.0533447265625]\n[261.635498046875]\n[252.62332153320312]\n[196.39459228515625]\n[382.73199462890625]\n" - } - ], + "outputs": [], "source": [ "# Create the Monte-Carlo algorithm\n", "algoProb = ot.ProbabilitySimulationAlgorithm(event)\n", - "algoProb.setMaximumOuterSampling(100)\n", + "algoProb.setMaximumOuterSampling(10)\n", "algoProb.setMaximumCoefficientOfVariation(0.01)\n", "algoProb.run()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { "kernelspec": { - "display_name": "python3_cours", + "display_name": "Python 3", "language": "python", - "name": "cours_micka" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -104,4 +93,4 @@ }, "nbformat": 4, "nbformat_minor": 2 -} \ No newline at end of file +} diff --git a/examples/distributions/probabilistic_models.csv b/examples/distributions/probabilistic_models.csv new file mode 100644 index 0000000..410b6da --- /dev/null +++ b/examples/distributions/probabilistic_models.csv @@ -0,0 +1,480 @@ +set_id,problem_id,reliability_problem_id,random_variable,distribution_type,theta_1,theta_2,theta_3,theta_4,mean,std +-1,1,8,1,lognormal,,,,,120,12 +-1,1,8,2,lognormal,,,,,120,12 +-1,1,8,3,lognormal,,,,,120,12 +-1,1,8,4,lognormal,,,,,120,12 +-1,1,8,5,lognormal,,,,,50,10 +-1,1,8,6,lognormal,,,,,40,8 +-1,2,22,1,normal,0,1,,,, +-1,2,22,2,normal,0,1,,,, +1,1,14,1,uniform,70,80,,,, +1,1,14,2,normal,39,0.1,,,, +1,1,14,3,gumbel_max,1342.48,272.89,,,1500,350 +1,1,14,4,normal,400,0.1,,,, +1,1,14,5,normal,250000,35000,,,, +1,2,24,1,normal,10,3,,,, +1,2,24,2,normal,10,3,,,, +1,3,28,1,normal,78064.4,11709.7,,,, +1,3,28,2,normal,0.0104,0.00156,,,, +1,4,31,1,normal,0,1,,,, +1,4,31,2,normal,0,1,,,, +1,5,38,1,normal,350,35,,,, +1,5,38,2,normal,50.8,5.08,,,, +1,5,38,3,normal,3.81,0.381,,,, +1,5,38,4,normal,173,17.3,,,, +1,5,38,5,normal,9.38,0.938,,,, +1,5,38,6,normal,33.1,3.31,,,, +1,5,38,7,normal,0.036,0.0036,,,, +1,6,53,1,normal,1.5,1,,,, +1,6,53,2,normal,2.5,1,,,, +1,7,54,1,exponential,1,,,,, +1,7,54,2,exponential,1,,,,, +1,7,54,3,exponential,1,,,,, +1,7,54,4,exponential,1,,,,, +1,7,54,5,exponential,1,,,,, +1,7,54,6,exponential,1,,,,, +1,7,54,7,exponential,1,,,,, +1,7,54,8,exponential,1,,,,, +1,7,54,9,exponential,1,,,,, +1,7,54,10,exponential,1,,,,, +1,7,54,11,exponential,1,,,,, +1,7,54,12,exponential,1,,,,, +1,7,54,13,exponential,1,,,,, +1,7,54,14,exponential,1,,,,, +1,7,54,15,exponential,1,,,,, +1,7,54,16,exponential,1,,,,, +1,7,54,17,exponential,1,,,,, +1,7,54,18,exponential,1,,,,, +1,7,54,19,exponential,1,,,,, +1,7,54,20,exponential,1,,,,, +1,8,63,1,normal,0,1,,,, +1,8,63,2,normal,0,1,,,, +1,8,63,3,normal,0,1,,,, +1,8,63,4,normal,0,1,,,, +1,8,63,5,normal,0,1,,,, +1,8,63,6,normal,0,1,,,, +1,8,63,7,normal,0,1,,,, +1,8,63,8,normal,0,1,,,, +1,8,63,9,normal,0,1,,,, +1,8,63,10,normal,0,1,,,, +1,8,63,11,normal,0,1,,,, +1,8,63,12,normal,0,1,,,, +1,8,63,13,normal,0,1,,,, +1,8,63,14,normal,0,1,,,, +1,8,63,15,normal,0,1,,,, +1,8,63,16,normal,0,1,,,, +1,8,63,17,normal,0,1,,,, +1,8,63,18,normal,0,1,,,, +1,8,63,19,normal,0,1,,,, +1,8,63,20,normal,0,1,,,, +1,8,63,21,normal,0,1,,,, +1,8,63,22,normal,0,1,,,, +1,8,63,23,normal,0,1,,,, +1,8,63,24,normal,0,1,,,, +1,8,63,25,normal,0,1,,,, +1,8,63,26,normal,0,1,,,, +1,8,63,27,normal,0,1,,,, +1,8,63,28,normal,0,1,,,, +1,8,63,29,normal,0,1,,,, +1,8,63,30,normal,0,1,,,, +1,8,63,31,normal,0,1,,,, +1,8,63,32,normal,0,1,,,, +1,8,63,33,normal,0,1,,,, +1,8,63,34,normal,0,1,,,, +1,8,63,35,normal,0,1,,,, +1,8,63,36,normal,0,1,,,, +1,8,63,37,normal,0,1,,,, +1,8,63,38,normal,0,1,,,, +1,8,63,39,normal,0,1,,,, +1,8,63,40,normal,0,1,,,, +1,8,63,41,normal,0,1,,,, +1,8,63,42,normal,0,1,,,, +1,8,63,43,normal,0,1,,,, +1,8,63,44,normal,0,1,,,, +1,8,63,45,normal,0,1,,,, +1,8,63,46,normal,0,1,,,, +1,8,63,47,normal,0,1,,,, +1,8,63,48,normal,0,1,,,, +1,8,63,49,normal,0,1,,,, +1,8,63,50,normal,0,1,,,, +1,8,63,51,normal,0,1,,,, +1,8,63,52,normal,0,1,,,, +1,8,63,53,normal,0,1,,,, +1,8,63,54,normal,0,1,,,, +1,8,63,55,normal,0,1,,,, +1,8,63,56,normal,0,1,,,, +1,8,63,57,normal,0,1,,,, +1,8,63,58,normal,0,1,,,, +1,8,63,59,normal,0,1,,,, +1,8,63,60,normal,0,1,,,, +1,8,63,61,normal,0,1,,,, +1,8,63,62,normal,0,1,,,, +1,8,63,63,normal,0,1,,,, +1,8,63,64,normal,0,1,,,, +1,8,63,65,normal,0,1,,,, +1,8,63,66,normal,0,1,,,, +1,8,63,67,normal,0,1,,,, +1,8,63,68,normal,0,1,,,, +1,8,63,69,normal,0,1,,,, +1,8,63,70,normal,0,1,,,, +1,8,63,71,normal,0,1,,,, +1,8,63,72,normal,0,1,,,, +1,8,63,73,normal,0,1,,,, +1,8,63,74,normal,0,1,,,, +1,8,63,75,normal,0,1,,,, +1,8,63,76,normal,0,1,,,, +1,8,63,77,normal,0,1,,,, +1,8,63,78,normal,0,1,,,, +1,8,63,79,normal,0,1,,,, +1,8,63,80,normal,0,1,,,, +1,8,63,81,normal,0,1,,,, +1,8,63,82,normal,0,1,,,, +1,8,63,83,normal,0,1,,,, +1,8,63,84,normal,0,1,,,, +1,8,63,85,normal,0,1,,,, +1,8,63,86,normal,0,1,,,, +1,8,63,87,normal,0,1,,,, +1,8,63,88,normal,0,1,,,, +1,8,63,89,normal,0,1,,,, +1,8,63,90,normal,0,1,,,, +1,8,63,91,normal,0,1,,,, +1,8,63,92,normal,0,1,,,, +1,8,63,93,normal,0,1,,,, +1,8,63,94,normal,0,1,,,, +1,8,63,95,normal,0,1,,,, +1,8,63,96,normal,0,1,,,, +1,8,63,97,normal,0,1,,,, +1,8,63,98,normal,0,1,,,, +1,8,63,99,normal,0,1,,,, +1,8,63,100,normal,0,1,,,, +1,9,75,1,normal,0,1,,,, +1,9,75,2,normal,0,1,,,, +1,10,107,1,normal,0,1,,,, +1,10,107,2,normal,0,1,,,, +1,10,107,3,normal,0,1,,,, +1,10,107,4,normal,0,1,,,, +1,10,107,5,normal,0,1,,,, +1,10,107,6,normal,0,1,,,, +1,10,107,7,normal,0,1,,,, +1,10,107,8,normal,0,1,,,, +1,10,107,9,normal,0,1,,,, +1,10,107,10,normal,0,1,,,, +1,11,111,1,normal,0,1,,,, +1,11,111,2,normal,0,1,,,, +1,12,201,1,normal,0,1,,,, +1,12,201,2,normal,0,1,,,, +1,12,201,3,normal,0,1,,,, +1,12,201,4,normal,0,1,,,, +1,12,201,5,normal,0,1,,,, +1,12,201,6,normal,0,1,,,, +1,12,201,7,normal,0,1,,,, +1,12,201,8,normal,0,1,,,, +1,12,201,9,normal,0,1,,,, +1,12,201,10,normal,0,1,,,, +1,12,201,11,normal,0,1,,,, +1,12,201,12,normal,0,1,,,, +1,12,201,13,normal,0,1,,,, +1,12,201,14,normal,0,1,,,, +1,12,201,15,normal,0,1,,,, +1,12,201,16,normal,0,1,,,, +1,12,201,17,normal,0,1,,,, +1,12,201,18,normal,0,1,,,, +1,12,201,19,normal,0,1,,,, +1,12,201,20,normal,0,1,,,, +1,12,201,21,normal,0,1,,,, +1,13,203,1,normal,0,1,,,, +1,13,203,2,normal,0,1,,,, +1,13,203,3,normal,0,1,,,, +1,13,203,4,normal,0,1,,,, +1,14,213,1,normal,0,1,,,, +1,14,213,2,normal,0,1,,,, +1,14,213,3,normal,0,1,,,, +1,14,213,4,normal,0,1,,,, +1,14,213,5,normal,0,1,,,, +1,14,213,6,normal,0,1,,,, +1,14,213,7,normal,0,1,,,, +1,14,213,8,normal,0,1,,,, +1,14,213,9,normal,0,1,,,, +1,14,213,10,normal,0,1,,,, +1,14,213,11,normal,0,1,,,, +1,14,213,12,normal,0,1,,,, +1,14,213,13,normal,0,1,,,, +1,15,300,1,normal,0,1,,,, +1,15,300,2,normal,0,1,,,, +1,15,300,3,normal,0,1,,,, +1,15,300,4,normal,0,1,,,, +1,15,300,5,normal,0,1,,,, +1,15,300,6,normal,0,1,,,, +1,15,300,7,normal,0,1,,,, +1,15,300,8,normal,0,1,,,, +1,15,300,9,normal,0,1,,,, +1,15,300,10,normal,0,1,,,, +1,15,300,11,normal,0,1,,,, +1,15,300,12,normal,0,1,,,, +1,15,300,13,normal,0,1,,,, +1,15,300,14,normal,0,1,,,, +1,16,301,1,lognormal,,,,,88,5 +1,16,301,2,lognormal,,,,,440,30 +1,16,301,3,lognormal,,,,,484,33 +1,16,301,4,lognormal,,,,,0.07,0.0063 +1,16,301,5,lognormal,,,,,590,41 +1,16,301,6,lognormal,,,,,649,45 +1,16,301,7,lognormal,,,,,0.07,0.0063 +1,16,301,8,normal,,,,,590,59 +1,16,301,9,gumbel_max,,,,,295,59 +1,16,301,10,lognormal,,,,,1.04,0.052 +1,16,301,11,lognormal,,,,,1,0.1 +1,16,301,12,lognormal,,,,,1,0.1 +2,1,25,1,normal,0,1,,,, +2,1,25,2,normal,0,1,,,, +2,2,33,1,normal,0,1,,,, +2,2,33,2,normal,0,1,,,, +2,2,33,3,normal,0,1,,,, +2,3,35,1,normal,0,1,,,, +2,3,35,2,normal,0,1,,,, +2,4,55,1,uniform,-1,1,,,, +2,4,55,2,uniform,-1,1,,,, +2,5,57,1,normal,0,1,,,, +2,5,57,2,normal,0,1,,,, +2,6,60,1,lognormal,,,,,2200,220 +2,6,60,2,lognormal,,,,,2100,210 +2,6,60,3,lognormal,,,,,2300,230 +2,6,60,4,lognormal,,,,,2000,200 +2,6,60,5,lognormal,,,,,1200,480 +2,7,77,1,normal,10,0.5,,,, +2,7,77,2,normal,0,1,,,, +2,7,77,3,normal,4,1,,,, +2,8,89,1,normal,0,1,,,, +2,8,89,2,normal,0,1,,,, +2,9,91,1,normal,0.07433,0.005,,,, +2,9,91,2,normal,0.1,0.01,,,, +2,9,91,3,normal,13,60,,,, +2,9,91,4,normal,4751,48,,,, +2,9,91,5,normal,-684,11,,,, +2,10,110,1,normal,0,1,,,, +2,10,110,2,normal,0,1,,,, +2,11,202,1,normal,0,1,,,, +2,11,202,2,normal,0,1,,,, +2,11,202,3,normal,0,1,,,, +2,11,202,4,normal,0,1,,,, +2,11,202,5,normal,0,1,,,, +2,11,202,6,normal,0,1,,,, +2,11,202,7,normal,0,1,,,, +2,11,202,8,normal,0,1,,,, +2,11,202,9,normal,0,1,,,, +2,11,202,10,normal,0,1,,,, +2,11,202,11,normal,0,1,,,, +2,11,202,12,normal,0,1,,,, +2,11,202,13,normal,0,1,,,, +2,11,202,14,normal,0,1,,,, +2,11,202,15,normal,0,1,,,, +2,11,202,16,normal,0,1,,,, +2,11,202,17,normal,0,1,,,, +2,11,202,18,normal,0,1,,,, +2,11,202,19,normal,0,1,,,, +2,11,202,20,normal,0,1,,,, +2,11,202,21,normal,0,1,,,, +2,11,202,22,normal,0,1,,,, +2,11,202,23,normal,0,1,,,, +2,11,202,24,normal,0,1,,,, +2,11,202,25,normal,0,1,,,, +2,11,202,26,normal,0,1,,,, +2,11,202,27,normal,0,1,,,, +2,11,202,28,normal,0,1,,,, +2,11,202,29,normal,0,1,,,, +2,11,202,30,normal,0,1,,,, +2,11,202,31,normal,0,1,,,, +2,11,202,32,normal,0,1,,,, +2,11,202,33,normal,0,1,,,, +2,11,202,34,normal,0,1,,,, +2,11,202,35,normal,0,1,,,, +2,11,202,36,normal,0,1,,,, +2,11,202,37,normal,0,1,,,, +2,11,202,38,normal,0,1,,,, +2,11,202,39,normal,0,1,,,, +2,11,202,40,normal,0,1,,,, +2,11,202,41,normal,0,1,,,, +2,11,202,42,normal,0,1,,,, +2,11,202,43,normal,0,1,,,, +2,11,202,44,normal,0,1,,,, +2,11,202,45,normal,0,1,,,, +2,11,202,46,normal,0,1,,,, +2,11,202,47,normal,0,1,,,, +2,11,202,48,normal,0,1,,,, +2,11,202,49,normal,0,1,,,, +2,11,202,50,normal,0,1,,,, +2,11,202,51,normal,0,1,,,, +2,11,202,52,normal,0,1,,,, +2,11,202,53,normal,0,1,,,, +2,11,202,54,normal,0,1,,,, +2,11,202,55,normal,0,1,,,, +2,11,202,56,normal,0,1,,,, +2,11,202,57,normal,0,1,,,, +2,11,202,58,normal,0,1,,,, +2,11,202,59,normal,0,1,,,, +2,11,202,60,normal,0,1,,,, +2,11,202,61,normal,0,1,,,, +2,11,202,62,normal,0,1,,,, +2,11,202,63,normal,0,1,,,, +2,11,202,64,normal,0,1,,,, +2,11,202,65,normal,0,1,,,, +2,11,202,66,normal,0,1,,,, +2,11,202,67,normal,0,1,,,, +2,11,202,68,normal,0,1,,,, +2,11,202,69,normal,0,1,,,, +2,11,202,70,normal,0,1,,,, +2,11,202,71,normal,0,1,,,, +2,11,202,72,normal,0,1,,,, +2,11,202,73,normal,0,1,,,, +2,11,202,74,normal,0,1,,,, +2,11,202,75,normal,0,1,,,, +2,11,202,76,normal,0,1,,,, +2,11,202,77,normal,0,1,,,, +2,11,202,78,normal,0,1,,,, +2,11,202,79,normal,0,1,,,, +2,11,202,80,normal,0,1,,,, +2,11,202,81,normal,0,1,,,, +2,11,202,82,normal,0,1,,,, +2,11,202,83,normal,0,1,,,, +2,11,202,84,normal,0,1,,,, +2,11,202,85,normal,0,1,,,, +2,11,202,86,normal,0,1,,,, +2,11,202,87,normal,0,1,,,, +2,11,202,88,normal,0,1,,,, +2,11,202,89,normal,0,1,,,, +2,11,202,90,normal,0,1,,,, +2,11,202,91,normal,0,1,,,, +2,11,202,92,normal,0,1,,,, +2,11,202,93,normal,0,1,,,, +2,11,202,94,normal,0,1,,,, +2,11,202,95,normal,0,1,,,, +2,11,202,96,normal,0,1,,,, +2,11,202,97,normal,0,1,,,, +2,11,202,98,normal,0,1,,,, +2,11,202,99,normal,0,1,,,, +2,11,202,100,normal,0,1,,,, +2,11,202,101,normal,0,1,,,, +2,11,202,102,normal,0,1,,,, +2,11,202,103,normal,0,1,,,, +2,11,202,104,normal,0,1,,,, +2,11,202,105,normal,0,1,,,, +2,11,202,106,normal,0,1,,,, +2,11,202,107,normal,0,1,,,, +2,11,202,108,normal,0,1,,,, +2,11,202,109,normal,0,1,,,, +2,11,202,110,normal,0,1,,,, +2,11,202,111,normal,0,1,,,, +2,11,202,112,normal,0,1,,,, +2,11,202,113,normal,0,1,,,, +2,11,202,114,normal,0,1,,,, +2,11,202,115,normal,0,1,,,, +2,11,202,116,normal,0,1,,,, +2,11,202,117,normal,0,1,,,, +2,11,202,118,normal,0,1,,,, +2,11,202,119,normal,0,1,,,, +2,11,202,120,normal,0,1,,,, +2,11,202,121,normal,0,1,,,, +2,11,202,122,normal,0,1,,,, +2,11,202,123,normal,0,1,,,, +2,11,202,124,normal,0,1,,,, +2,11,202,125,normal,0,1,,,, +2,11,202,126,normal,0,1,,,, +2,11,202,127,normal,0,1,,,, +2,11,202,128,normal,0,1,,,, +2,11,202,129,normal,0,1,,,, +2,11,202,130,normal,0,1,,,, +2,11,202,131,normal,0,1,,,, +2,11,202,132,normal,0,1,,,, +2,11,202,133,normal,0,1,,,, +2,11,202,134,normal,0,1,,,, +2,11,202,135,normal,0,1,,,, +2,11,202,136,normal,0,1,,,, +2,11,202,137,normal,0,1,,,, +2,11,202,138,normal,0,1,,,, +2,11,202,139,normal,0,1,,,, +2,11,202,140,normal,0,1,,,, +2,11,202,141,normal,0,1,,,, +2,11,202,142,normal,0,1,,,, +2,11,202,143,normal,0,1,,,, +2,11,202,144,normal,0,1,,,, +2,11,202,145,normal,0,1,,,, +2,11,202,146,normal,0,1,,,, +2,11,202,147,normal,0,1,,,, +2,11,202,148,normal,0,1,,,, +2,11,202,149,normal,0,1,,,, +2,11,202,150,normal,0,1,,,, +2,11,202,151,normal,0,1,,,, +2,11,202,152,normal,0,1,,,, +2,11,202,153,normal,0,1,,,, +2,11,202,154,normal,0,1,,,, +2,11,202,155,normal,0,1,,,, +2,11,202,156,normal,0,1,,,, +2,11,202,157,normal,0,1,,,, +2,11,202,158,normal,0,1,,,, +2,11,202,159,normal,0,1,,,, +2,11,202,160,normal,0,1,,,, +2,11,202,161,normal,0,1,,,, +2,11,202,162,normal,0,1,,,, +2,11,202,163,normal,0,1,,,, +2,11,202,164,normal,0,1,,,, +2,11,202,165,normal,0,1,,,, +2,11,202,166,normal,0,1,,,, +2,11,202,167,normal,0,1,,,, +2,11,202,168,normal,0,1,,,, +2,11,202,169,normal,0,1,,,, +2,11,202,170,normal,0,1,,,, +2,11,202,171,normal,0,1,,,, +2,11,202,172,normal,0,1,,,, +2,11,202,173,normal,0,1,,,, +2,11,202,174,normal,0,1,,,, +2,11,202,175,normal,0,1,,,, +2,11,202,176,normal,0,1,,,, +2,11,202,177,normal,0,1,,,, +2,11,202,178,normal,0,1,,,, +2,11,202,179,normal,0,1,,,, +2,11,202,180,normal,0,1,,,, +2,11,202,181,normal,0,1,,,, +2,11,202,182,normal,0,1,,,, +2,11,202,183,normal,0,1,,,, +2,11,202,184,normal,0,1,,,, +2,11,202,185,normal,0,1,,,, +2,11,202,186,normal,0,1,,,, +2,11,202,187,normal,0,1,,,, +2,11,202,188,normal,0,1,,,, +2,11,202,189,normal,0,1,,,, +2,11,202,190,normal,0,1,,,, +2,11,202,191,normal,0,1,,,, +2,11,202,192,normal,0,1,,,, +2,11,202,193,normal,0,1,,,, +2,11,202,194,normal,0,1,,,, +2,11,202,195,normal,0,1,,,, +2,11,202,196,normal,0,1,,,, +2,11,202,197,normal,0,1,,,, +2,11,202,198,normal,0,1,,,, +2,11,202,199,normal,0,1,,,, +2,11,202,200,normal,0,1,,,, +2,11,202,201,normal,0,1,,,, +2,11,202,202,normal,0,1,,,, +2,11,202,203,normal,0,1,,,, +2,11,202,204,normal,0,1,,,, +2,11,202,205,normal,0,1,,,, +2,11,202,206,normal,0,1,,,, +2,11,202,207,normal,0,1,,,, +2,11,202,208,normal,0,1,,,, +2,11,202,209,normal,0,1,,,, +2,11,202,210,normal,0,1,,,, +2,11,202,211,normal,0,1,,,, +2,11,202,212,normal,0,1,,,, +2,11,202,213,normal,0,1,,,, +2,11,202,214,normal,0,1,,,, +2,11,202,215,normal,0,1,,,, +2,11,202,216,normal,0,1,,,, +2,11,202,217,normal,0,1,,,, +2,11,202,218,normal,0,1,,,, +2,11,202,219,normal,0,1,,,, +2,11,202,220,normal,0,1,,,, +2,11,202,221,normal,0,1,,,, +2,11,202,222,normal,0,1,,,, +2,11,202,223,normal,0,1,,,, +2,11,202,224,normal,0,1,,,, +2,11,202,225,normal,0,1,,,, diff --git a/examples/distributions/probabilistic_models_up.csv b/examples/distributions/probabilistic_models_up.csv new file mode 100644 index 0000000..81c52a5 --- /dev/null +++ b/examples/distributions/probabilistic_models_up.csv @@ -0,0 +1,480 @@ +set_id,problem_id,reliability_problem_id,random_variable,distribution_type,theta_1,theta_2,theta_3,theta_4,mean,std +-1,1,8,1,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,2,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,3,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,4,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,5,lognormal,3.8924126488515056,0.1980422004353651,,,50.0,10.0 +-1,1,8,6,lognormal,3.669269097537296,0.1980422004353651,,,40.0,8.0 +-1,2,22,1,normal,0.0,1.0,,,0.0,1.0 +-1,2,22,2,normal,0.0,1.0,,,0.0,1.0 +1,1,14,1,uniform,70.0,80.0,,,75.0,2.886751345948129 +1,1,14,2,normal,39.0,0.1,,,39.0,0.1 +1,1,14,3,gumbel_max,1342.48,272.89,,,1500.0,350.0 +1,1,14,4,normal,400.0,0.1,,,400.0,0.1 +1,1,14,5,normal,250000.0,35000.0,,,250000.0,35000.0 +1,2,24,1,normal,10.0,3.0,,,10.0,3.0 +1,2,24,2,normal,10.0,3.0,,,10.0,3.0 +1,3,28,1,normal,78064.4,11709.7,,,78064.4,11709.7 +1,3,28,2,normal,0.0104,0.00156,,,0.0104,0.00156 +1,4,31,1,normal,0.0,1.0,,,0.0,1.0 +1,4,31,2,normal,0.0,1.0,,,0.0,1.0 +1,5,38,1,normal,350.0,35.0,,,350.0,35.0 +1,5,38,2,normal,50.8,5.08,,,50.8,5.08 +1,5,38,3,normal,3.81,0.381,,,3.81,0.381 +1,5,38,4,normal,173.0,17.3,,,173.0,17.3 +1,5,38,5,normal,9.38,0.938,,,9.38,0.938 +1,5,38,6,normal,33.1,3.31,,,33.1,3.31 +1,5,38,7,normal,0.036000000000000004,0.0036,,,0.036000000000000004,0.0036 +1,6,53,1,normal,1.5,1.0,,,1.5,1.0 +1,6,53,2,normal,2.5,1.0,,,2.5,1.0 +1,7,54,1,exponential,1.0,,,,1.0,1.0 +1,7,54,2,exponential,1.0,,,,1.0,1.0 +1,7,54,3,exponential,1.0,,,,1.0,1.0 +1,7,54,4,exponential,1.0,,,,1.0,1.0 +1,7,54,5,exponential,1.0,,,,1.0,1.0 +1,7,54,6,exponential,1.0,,,,1.0,1.0 +1,7,54,7,exponential,1.0,,,,1.0,1.0 +1,7,54,8,exponential,1.0,,,,1.0,1.0 +1,7,54,9,exponential,1.0,,,,1.0,1.0 +1,7,54,10,exponential,1.0,,,,1.0,1.0 +1,7,54,11,exponential,1.0,,,,1.0,1.0 +1,7,54,12,exponential,1.0,,,,1.0,1.0 +1,7,54,13,exponential,1.0,,,,1.0,1.0 +1,7,54,14,exponential,1.0,,,,1.0,1.0 +1,7,54,15,exponential,1.0,,,,1.0,1.0 +1,7,54,16,exponential,1.0,,,,1.0,1.0 +1,7,54,17,exponential,1.0,,,,1.0,1.0 +1,7,54,18,exponential,1.0,,,,1.0,1.0 +1,7,54,19,exponential,1.0,,,,1.0,1.0 +1,7,54,20,exponential,1.0,,,,1.0,1.0 +1,8,63,1,normal,0.0,1.0,,,0.0,1.0 +1,8,63,2,normal,0.0,1.0,,,0.0,1.0 +1,8,63,3,normal,0.0,1.0,,,0.0,1.0 +1,8,63,4,normal,0.0,1.0,,,0.0,1.0 +1,8,63,5,normal,0.0,1.0,,,0.0,1.0 +1,8,63,6,normal,0.0,1.0,,,0.0,1.0 +1,8,63,7,normal,0.0,1.0,,,0.0,1.0 +1,8,63,8,normal,0.0,1.0,,,0.0,1.0 +1,8,63,9,normal,0.0,1.0,,,0.0,1.0 +1,8,63,10,normal,0.0,1.0,,,0.0,1.0 +1,8,63,11,normal,0.0,1.0,,,0.0,1.0 +1,8,63,12,normal,0.0,1.0,,,0.0,1.0 +1,8,63,13,normal,0.0,1.0,,,0.0,1.0 +1,8,63,14,normal,0.0,1.0,,,0.0,1.0 +1,8,63,15,normal,0.0,1.0,,,0.0,1.0 +1,8,63,16,normal,0.0,1.0,,,0.0,1.0 +1,8,63,17,normal,0.0,1.0,,,0.0,1.0 +1,8,63,18,normal,0.0,1.0,,,0.0,1.0 +1,8,63,19,normal,0.0,1.0,,,0.0,1.0 +1,8,63,20,normal,0.0,1.0,,,0.0,1.0 +1,8,63,21,normal,0.0,1.0,,,0.0,1.0 +1,8,63,22,normal,0.0,1.0,,,0.0,1.0 +1,8,63,23,normal,0.0,1.0,,,0.0,1.0 +1,8,63,24,normal,0.0,1.0,,,0.0,1.0 +1,8,63,25,normal,0.0,1.0,,,0.0,1.0 +1,8,63,26,normal,0.0,1.0,,,0.0,1.0 +1,8,63,27,normal,0.0,1.0,,,0.0,1.0 +1,8,63,28,normal,0.0,1.0,,,0.0,1.0 +1,8,63,29,normal,0.0,1.0,,,0.0,1.0 +1,8,63,30,normal,0.0,1.0,,,0.0,1.0 +1,8,63,31,normal,0.0,1.0,,,0.0,1.0 +1,8,63,32,normal,0.0,1.0,,,0.0,1.0 +1,8,63,33,normal,0.0,1.0,,,0.0,1.0 +1,8,63,34,normal,0.0,1.0,,,0.0,1.0 +1,8,63,35,normal,0.0,1.0,,,0.0,1.0 +1,8,63,36,normal,0.0,1.0,,,0.0,1.0 +1,8,63,37,normal,0.0,1.0,,,0.0,1.0 +1,8,63,38,normal,0.0,1.0,,,0.0,1.0 +1,8,63,39,normal,0.0,1.0,,,0.0,1.0 +1,8,63,40,normal,0.0,1.0,,,0.0,1.0 +1,8,63,41,normal,0.0,1.0,,,0.0,1.0 +1,8,63,42,normal,0.0,1.0,,,0.0,1.0 +1,8,63,43,normal,0.0,1.0,,,0.0,1.0 +1,8,63,44,normal,0.0,1.0,,,0.0,1.0 +1,8,63,45,normal,0.0,1.0,,,0.0,1.0 +1,8,63,46,normal,0.0,1.0,,,0.0,1.0 +1,8,63,47,normal,0.0,1.0,,,0.0,1.0 +1,8,63,48,normal,0.0,1.0,,,0.0,1.0 +1,8,63,49,normal,0.0,1.0,,,0.0,1.0 +1,8,63,50,normal,0.0,1.0,,,0.0,1.0 +1,8,63,51,normal,0.0,1.0,,,0.0,1.0 +1,8,63,52,normal,0.0,1.0,,,0.0,1.0 +1,8,63,53,normal,0.0,1.0,,,0.0,1.0 +1,8,63,54,normal,0.0,1.0,,,0.0,1.0 +1,8,63,55,normal,0.0,1.0,,,0.0,1.0 +1,8,63,56,normal,0.0,1.0,,,0.0,1.0 +1,8,63,57,normal,0.0,1.0,,,0.0,1.0 +1,8,63,58,normal,0.0,1.0,,,0.0,1.0 +1,8,63,59,normal,0.0,1.0,,,0.0,1.0 +1,8,63,60,normal,0.0,1.0,,,0.0,1.0 +1,8,63,61,normal,0.0,1.0,,,0.0,1.0 +1,8,63,62,normal,0.0,1.0,,,0.0,1.0 +1,8,63,63,normal,0.0,1.0,,,0.0,1.0 +1,8,63,64,normal,0.0,1.0,,,0.0,1.0 +1,8,63,65,normal,0.0,1.0,,,0.0,1.0 +1,8,63,66,normal,0.0,1.0,,,0.0,1.0 +1,8,63,67,normal,0.0,1.0,,,0.0,1.0 +1,8,63,68,normal,0.0,1.0,,,0.0,1.0 +1,8,63,69,normal,0.0,1.0,,,0.0,1.0 +1,8,63,70,normal,0.0,1.0,,,0.0,1.0 +1,8,63,71,normal,0.0,1.0,,,0.0,1.0 +1,8,63,72,normal,0.0,1.0,,,0.0,1.0 +1,8,63,73,normal,0.0,1.0,,,0.0,1.0 +1,8,63,74,normal,0.0,1.0,,,0.0,1.0 +1,8,63,75,normal,0.0,1.0,,,0.0,1.0 +1,8,63,76,normal,0.0,1.0,,,0.0,1.0 +1,8,63,77,normal,0.0,1.0,,,0.0,1.0 +1,8,63,78,normal,0.0,1.0,,,0.0,1.0 +1,8,63,79,normal,0.0,1.0,,,0.0,1.0 +1,8,63,80,normal,0.0,1.0,,,0.0,1.0 +1,8,63,81,normal,0.0,1.0,,,0.0,1.0 +1,8,63,82,normal,0.0,1.0,,,0.0,1.0 +1,8,63,83,normal,0.0,1.0,,,0.0,1.0 +1,8,63,84,normal,0.0,1.0,,,0.0,1.0 +1,8,63,85,normal,0.0,1.0,,,0.0,1.0 +1,8,63,86,normal,0.0,1.0,,,0.0,1.0 +1,8,63,87,normal,0.0,1.0,,,0.0,1.0 +1,8,63,88,normal,0.0,1.0,,,0.0,1.0 +1,8,63,89,normal,0.0,1.0,,,0.0,1.0 +1,8,63,90,normal,0.0,1.0,,,0.0,1.0 +1,8,63,91,normal,0.0,1.0,,,0.0,1.0 +1,8,63,92,normal,0.0,1.0,,,0.0,1.0 +1,8,63,93,normal,0.0,1.0,,,0.0,1.0 +1,8,63,94,normal,0.0,1.0,,,0.0,1.0 +1,8,63,95,normal,0.0,1.0,,,0.0,1.0 +1,8,63,96,normal,0.0,1.0,,,0.0,1.0 +1,8,63,97,normal,0.0,1.0,,,0.0,1.0 +1,8,63,98,normal,0.0,1.0,,,0.0,1.0 +1,8,63,99,normal,0.0,1.0,,,0.0,1.0 +1,8,63,100,normal,0.0,1.0,,,0.0,1.0 +1,9,75,1,normal,0.0,1.0,,,0.0,1.0 +1,9,75,2,normal,0.0,1.0,,,0.0,1.0 +1,10,107,1,normal,0.0,1.0,,,0.0,1.0 +1,10,107,2,normal,0.0,1.0,,,0.0,1.0 +1,10,107,3,normal,0.0,1.0,,,0.0,1.0 +1,10,107,4,normal,0.0,1.0,,,0.0,1.0 +1,10,107,5,normal,0.0,1.0,,,0.0,1.0 +1,10,107,6,normal,0.0,1.0,,,0.0,1.0 +1,10,107,7,normal,0.0,1.0,,,0.0,1.0 +1,10,107,8,normal,0.0,1.0,,,0.0,1.0 +1,10,107,9,normal,0.0,1.0,,,0.0,1.0 +1,10,107,10,normal,0.0,1.0,,,0.0,1.0 +1,11,111,1,normal,0.0,1.0,,,0.0,1.0 +1,11,111,2,normal,0.0,1.0,,,0.0,1.0 +1,12,201,1,normal,0.0,1.0,,,0.0,1.0 +1,12,201,2,normal,0.0,1.0,,,0.0,1.0 +1,12,201,3,normal,0.0,1.0,,,0.0,1.0 +1,12,201,4,normal,0.0,1.0,,,0.0,1.0 +1,12,201,5,normal,0.0,1.0,,,0.0,1.0 +1,12,201,6,normal,0.0,1.0,,,0.0,1.0 +1,12,201,7,normal,0.0,1.0,,,0.0,1.0 +1,12,201,8,normal,0.0,1.0,,,0.0,1.0 +1,12,201,9,normal,0.0,1.0,,,0.0,1.0 +1,12,201,10,normal,0.0,1.0,,,0.0,1.0 +1,12,201,11,normal,0.0,1.0,,,0.0,1.0 +1,12,201,12,normal,0.0,1.0,,,0.0,1.0 +1,12,201,13,normal,0.0,1.0,,,0.0,1.0 +1,12,201,14,normal,0.0,1.0,,,0.0,1.0 +1,12,201,15,normal,0.0,1.0,,,0.0,1.0 +1,12,201,16,normal,0.0,1.0,,,0.0,1.0 +1,12,201,17,normal,0.0,1.0,,,0.0,1.0 +1,12,201,18,normal,0.0,1.0,,,0.0,1.0 +1,12,201,19,normal,0.0,1.0,,,0.0,1.0 +1,12,201,20,normal,0.0,1.0,,,0.0,1.0 +1,12,201,21,normal,0.0,1.0,,,0.0,1.0 +1,13,203,1,normal,0.0,1.0,,,0.0,1.0 +1,13,203,2,normal,0.0,1.0,,,0.0,1.0 +1,13,203,3,normal,0.0,1.0,,,0.0,1.0 +1,13,203,4,normal,0.0,1.0,,,0.0,1.0 +1,14,213,1,normal,0.0,1.0,,,0.0,1.0 +1,14,213,2,normal,0.0,1.0,,,0.0,1.0 +1,14,213,3,normal,0.0,1.0,,,0.0,1.0 +1,14,213,4,normal,0.0,1.0,,,0.0,1.0 +1,14,213,5,normal,0.0,1.0,,,0.0,1.0 +1,14,213,6,normal,0.0,1.0,,,0.0,1.0 +1,14,213,7,normal,0.0,1.0,,,0.0,1.0 +1,14,213,8,normal,0.0,1.0,,,0.0,1.0 +1,14,213,9,normal,0.0,1.0,,,0.0,1.0 +1,14,213,10,normal,0.0,1.0,,,0.0,1.0 +1,14,213,11,normal,0.0,1.0,,,0.0,1.0 +1,14,213,12,normal,0.0,1.0,,,0.0,1.0 +1,14,213,13,normal,0.0,1.0,,,0.0,1.0 +1,15,300,1,normal,0.0,1.0,,,0.0,1.0 +1,15,300,2,normal,0.0,1.0,,,0.0,1.0 +1,15,300,3,normal,0.0,1.0,,,0.0,1.0 +1,15,300,4,normal,0.0,1.0,,,0.0,1.0 +1,15,300,5,normal,0.0,1.0,,,0.0,1.0 +1,15,300,6,normal,0.0,1.0,,,0.0,1.0 +1,15,300,7,normal,0.0,1.0,,,0.0,1.0 +1,15,300,8,normal,0.0,1.0,,,0.0,1.0 +1,15,300,9,normal,0.0,1.0,,,0.0,1.0 +1,15,300,10,normal,0.0,1.0,,,0.0,1.0 +1,15,300,11,normal,0.0,1.0,,,0.0,1.0 +1,15,300,12,normal,0.0,1.0,,,0.0,1.0 +1,15,300,13,normal,0.0,1.0,,,0.0,1.0 +1,15,300,14,normal,0.0,1.0,,,0.0,1.0 +1,16,301,1,lognormal,4.475725261481203,0.056772405215982924,,,88.0,5.0 +1,16,301,2,lognormal,6.084455732804295,0.06810277685986316,,,440.0,30.0 +1,16,301,3,lognormal,6.1797659126086195,0.06810277685986316,,,484.0,33.0 +1,16,301,4,lognormal,-2.6632937224716575,0.08981854528859166,,,0.07,0.0063 +1,16,301,5,lognormal,6.37771381213003,0.06940784926411606,,,590.0,41.0 +1,16,301,6,lognormal,6.4730346362521605,0.06925432047070759,,,649.0,45.0 +1,16,301,7,lognormal,-2.6632937224716575,0.08981854528859166,,,0.07,0.0063 +1,16,301,8,normal,590.0,59.0,,,590.0,59.0 +1,16,301,9,gumbel_max,268.446860754804,46.002111272786884,,,295.0,59.0 +1,16,301,10,lognormal,0.037972273053987586,0.049968792246632754,,,1.04,0.052000000000000005 +1,16,301,11,lognormal,-0.0049751654265839124,0.0997513451195927,,,1.0,0.1 +1,16,301,12,lognormal,-0.0049751654265839124,0.0997513451195927,,,1.0,0.1 +2,1,25,1,normal,0.0,1.0,,,0.0,1.0 +2,1,25,2,normal,0.0,1.0,,,0.0,1.0 +2,2,33,1,normal,0.0,1.0,,,0.0,1.0 +2,2,33,2,normal,0.0,1.0,,,0.0,1.0 +2,2,33,3,normal,0.0,1.0,,,0.0,1.0 +2,3,35,1,normal,0.0,1.0,,,0.0,1.0 +2,3,35,2,normal,0.0,1.0,,,0.0,1.0 +2,4,55,1,uniform,-1.0,1.0,,,0.0,0.5773502691896257 +2,4,55,2,uniform,-1.0,1.0,,,0.0,0.5773502691896257 +2,5,57,1,normal,0.0,1.0,,,0.0,1.0 +2,5,57,2,normal,0.0,1.0,,,0.0,1.0 +2,6,60,1,lognormal,7.6912374739198235,0.0997513451195927,,,2200.0,220.0 +2,6,60,2,lognormal,7.64471745828493,0.0997513451195927,,,2100.0,210.0 +2,6,60,3,lognormal,7.735689236490657,0.0997513451195927,,,2300.0,230.0 +2,6,60,4,lognormal,7.595927294115499,0.0997513451195927,,,2000.0,200.0 +2,6,60,5,lognormal,7.015866833216955,0.38525317015992644,,,1200.0,480.0 +2,7,77,1,normal,10.0,0.5,,,10.0,0.5 +2,7,77,2,normal,0.0,1.0,,,0.0,1.0 +2,7,77,3,normal,4.0,1.0,,,4.0,1.0 +2,8,89,1,normal,0.0,1.0,,,0.0,1.0 +2,8,89,2,normal,0.0,1.0,,,0.0,1.0 +2,9,91,1,normal,0.07433,0.005,,,0.07433,0.005 +2,9,91,2,normal,0.1,0.01,,,0.1,0.01 +2,9,91,3,normal,13.0,60.0,,,13.0,60.0 +2,9,91,4,normal,4751.0,48.0,,,4751.0,48.0 +2,9,91,5,normal,-684.0,11.0,,,-684.0,11.0 +2,10,110,1,normal,0.0,1.0,,,0.0,1.0 +2,10,110,2,normal,0.0,1.0,,,0.0,1.0 +2,11,202,1,normal,0.0,1.0,,,0.0,1.0 +2,11,202,2,normal,0.0,1.0,,,0.0,1.0 +2,11,202,3,normal,0.0,1.0,,,0.0,1.0 +2,11,202,4,normal,0.0,1.0,,,0.0,1.0 +2,11,202,5,normal,0.0,1.0,,,0.0,1.0 +2,11,202,6,normal,0.0,1.0,,,0.0,1.0 +2,11,202,7,normal,0.0,1.0,,,0.0,1.0 +2,11,202,8,normal,0.0,1.0,,,0.0,1.0 +2,11,202,9,normal,0.0,1.0,,,0.0,1.0 +2,11,202,10,normal,0.0,1.0,,,0.0,1.0 +2,11,202,11,normal,0.0,1.0,,,0.0,1.0 +2,11,202,12,normal,0.0,1.0,,,0.0,1.0 +2,11,202,13,normal,0.0,1.0,,,0.0,1.0 +2,11,202,14,normal,0.0,1.0,,,0.0,1.0 +2,11,202,15,normal,0.0,1.0,,,0.0,1.0 +2,11,202,16,normal,0.0,1.0,,,0.0,1.0 +2,11,202,17,normal,0.0,1.0,,,0.0,1.0 +2,11,202,18,normal,0.0,1.0,,,0.0,1.0 +2,11,202,19,normal,0.0,1.0,,,0.0,1.0 +2,11,202,20,normal,0.0,1.0,,,0.0,1.0 +2,11,202,21,normal,0.0,1.0,,,0.0,1.0 +2,11,202,22,normal,0.0,1.0,,,0.0,1.0 +2,11,202,23,normal,0.0,1.0,,,0.0,1.0 +2,11,202,24,normal,0.0,1.0,,,0.0,1.0 +2,11,202,25,normal,0.0,1.0,,,0.0,1.0 +2,11,202,26,normal,0.0,1.0,,,0.0,1.0 +2,11,202,27,normal,0.0,1.0,,,0.0,1.0 +2,11,202,28,normal,0.0,1.0,,,0.0,1.0 +2,11,202,29,normal,0.0,1.0,,,0.0,1.0 +2,11,202,30,normal,0.0,1.0,,,0.0,1.0 +2,11,202,31,normal,0.0,1.0,,,0.0,1.0 +2,11,202,32,normal,0.0,1.0,,,0.0,1.0 +2,11,202,33,normal,0.0,1.0,,,0.0,1.0 +2,11,202,34,normal,0.0,1.0,,,0.0,1.0 +2,11,202,35,normal,0.0,1.0,,,0.0,1.0 +2,11,202,36,normal,0.0,1.0,,,0.0,1.0 +2,11,202,37,normal,0.0,1.0,,,0.0,1.0 +2,11,202,38,normal,0.0,1.0,,,0.0,1.0 +2,11,202,39,normal,0.0,1.0,,,0.0,1.0 +2,11,202,40,normal,0.0,1.0,,,0.0,1.0 +2,11,202,41,normal,0.0,1.0,,,0.0,1.0 +2,11,202,42,normal,0.0,1.0,,,0.0,1.0 +2,11,202,43,normal,0.0,1.0,,,0.0,1.0 +2,11,202,44,normal,0.0,1.0,,,0.0,1.0 +2,11,202,45,normal,0.0,1.0,,,0.0,1.0 +2,11,202,46,normal,0.0,1.0,,,0.0,1.0 +2,11,202,47,normal,0.0,1.0,,,0.0,1.0 +2,11,202,48,normal,0.0,1.0,,,0.0,1.0 +2,11,202,49,normal,0.0,1.0,,,0.0,1.0 +2,11,202,50,normal,0.0,1.0,,,0.0,1.0 +2,11,202,51,normal,0.0,1.0,,,0.0,1.0 +2,11,202,52,normal,0.0,1.0,,,0.0,1.0 +2,11,202,53,normal,0.0,1.0,,,0.0,1.0 +2,11,202,54,normal,0.0,1.0,,,0.0,1.0 +2,11,202,55,normal,0.0,1.0,,,0.0,1.0 +2,11,202,56,normal,0.0,1.0,,,0.0,1.0 +2,11,202,57,normal,0.0,1.0,,,0.0,1.0 +2,11,202,58,normal,0.0,1.0,,,0.0,1.0 +2,11,202,59,normal,0.0,1.0,,,0.0,1.0 +2,11,202,60,normal,0.0,1.0,,,0.0,1.0 +2,11,202,61,normal,0.0,1.0,,,0.0,1.0 +2,11,202,62,normal,0.0,1.0,,,0.0,1.0 +2,11,202,63,normal,0.0,1.0,,,0.0,1.0 +2,11,202,64,normal,0.0,1.0,,,0.0,1.0 +2,11,202,65,normal,0.0,1.0,,,0.0,1.0 +2,11,202,66,normal,0.0,1.0,,,0.0,1.0 +2,11,202,67,normal,0.0,1.0,,,0.0,1.0 +2,11,202,68,normal,0.0,1.0,,,0.0,1.0 +2,11,202,69,normal,0.0,1.0,,,0.0,1.0 +2,11,202,70,normal,0.0,1.0,,,0.0,1.0 +2,11,202,71,normal,0.0,1.0,,,0.0,1.0 +2,11,202,72,normal,0.0,1.0,,,0.0,1.0 +2,11,202,73,normal,0.0,1.0,,,0.0,1.0 +2,11,202,74,normal,0.0,1.0,,,0.0,1.0 +2,11,202,75,normal,0.0,1.0,,,0.0,1.0 +2,11,202,76,normal,0.0,1.0,,,0.0,1.0 +2,11,202,77,normal,0.0,1.0,,,0.0,1.0 +2,11,202,78,normal,0.0,1.0,,,0.0,1.0 +2,11,202,79,normal,0.0,1.0,,,0.0,1.0 +2,11,202,80,normal,0.0,1.0,,,0.0,1.0 +2,11,202,81,normal,0.0,1.0,,,0.0,1.0 +2,11,202,82,normal,0.0,1.0,,,0.0,1.0 +2,11,202,83,normal,0.0,1.0,,,0.0,1.0 +2,11,202,84,normal,0.0,1.0,,,0.0,1.0 +2,11,202,85,normal,0.0,1.0,,,0.0,1.0 +2,11,202,86,normal,0.0,1.0,,,0.0,1.0 +2,11,202,87,normal,0.0,1.0,,,0.0,1.0 +2,11,202,88,normal,0.0,1.0,,,0.0,1.0 +2,11,202,89,normal,0.0,1.0,,,0.0,1.0 +2,11,202,90,normal,0.0,1.0,,,0.0,1.0 +2,11,202,91,normal,0.0,1.0,,,0.0,1.0 +2,11,202,92,normal,0.0,1.0,,,0.0,1.0 +2,11,202,93,normal,0.0,1.0,,,0.0,1.0 +2,11,202,94,normal,0.0,1.0,,,0.0,1.0 +2,11,202,95,normal,0.0,1.0,,,0.0,1.0 +2,11,202,96,normal,0.0,1.0,,,0.0,1.0 +2,11,202,97,normal,0.0,1.0,,,0.0,1.0 +2,11,202,98,normal,0.0,1.0,,,0.0,1.0 +2,11,202,99,normal,0.0,1.0,,,0.0,1.0 +2,11,202,100,normal,0.0,1.0,,,0.0,1.0 +2,11,202,101,normal,0.0,1.0,,,0.0,1.0 +2,11,202,102,normal,0.0,1.0,,,0.0,1.0 +2,11,202,103,normal,0.0,1.0,,,0.0,1.0 +2,11,202,104,normal,0.0,1.0,,,0.0,1.0 +2,11,202,105,normal,0.0,1.0,,,0.0,1.0 +2,11,202,106,normal,0.0,1.0,,,0.0,1.0 +2,11,202,107,normal,0.0,1.0,,,0.0,1.0 +2,11,202,108,normal,0.0,1.0,,,0.0,1.0 +2,11,202,109,normal,0.0,1.0,,,0.0,1.0 +2,11,202,110,normal,0.0,1.0,,,0.0,1.0 +2,11,202,111,normal,0.0,1.0,,,0.0,1.0 +2,11,202,112,normal,0.0,1.0,,,0.0,1.0 +2,11,202,113,normal,0.0,1.0,,,0.0,1.0 +2,11,202,114,normal,0.0,1.0,,,0.0,1.0 +2,11,202,115,normal,0.0,1.0,,,0.0,1.0 +2,11,202,116,normal,0.0,1.0,,,0.0,1.0 +2,11,202,117,normal,0.0,1.0,,,0.0,1.0 +2,11,202,118,normal,0.0,1.0,,,0.0,1.0 +2,11,202,119,normal,0.0,1.0,,,0.0,1.0 +2,11,202,120,normal,0.0,1.0,,,0.0,1.0 +2,11,202,121,normal,0.0,1.0,,,0.0,1.0 +2,11,202,122,normal,0.0,1.0,,,0.0,1.0 +2,11,202,123,normal,0.0,1.0,,,0.0,1.0 +2,11,202,124,normal,0.0,1.0,,,0.0,1.0 +2,11,202,125,normal,0.0,1.0,,,0.0,1.0 +2,11,202,126,normal,0.0,1.0,,,0.0,1.0 +2,11,202,127,normal,0.0,1.0,,,0.0,1.0 +2,11,202,128,normal,0.0,1.0,,,0.0,1.0 +2,11,202,129,normal,0.0,1.0,,,0.0,1.0 +2,11,202,130,normal,0.0,1.0,,,0.0,1.0 +2,11,202,131,normal,0.0,1.0,,,0.0,1.0 +2,11,202,132,normal,0.0,1.0,,,0.0,1.0 +2,11,202,133,normal,0.0,1.0,,,0.0,1.0 +2,11,202,134,normal,0.0,1.0,,,0.0,1.0 +2,11,202,135,normal,0.0,1.0,,,0.0,1.0 +2,11,202,136,normal,0.0,1.0,,,0.0,1.0 +2,11,202,137,normal,0.0,1.0,,,0.0,1.0 +2,11,202,138,normal,0.0,1.0,,,0.0,1.0 +2,11,202,139,normal,0.0,1.0,,,0.0,1.0 +2,11,202,140,normal,0.0,1.0,,,0.0,1.0 +2,11,202,141,normal,0.0,1.0,,,0.0,1.0 +2,11,202,142,normal,0.0,1.0,,,0.0,1.0 +2,11,202,143,normal,0.0,1.0,,,0.0,1.0 +2,11,202,144,normal,0.0,1.0,,,0.0,1.0 +2,11,202,145,normal,0.0,1.0,,,0.0,1.0 +2,11,202,146,normal,0.0,1.0,,,0.0,1.0 +2,11,202,147,normal,0.0,1.0,,,0.0,1.0 +2,11,202,148,normal,0.0,1.0,,,0.0,1.0 +2,11,202,149,normal,0.0,1.0,,,0.0,1.0 +2,11,202,150,normal,0.0,1.0,,,0.0,1.0 +2,11,202,151,normal,0.0,1.0,,,0.0,1.0 +2,11,202,152,normal,0.0,1.0,,,0.0,1.0 +2,11,202,153,normal,0.0,1.0,,,0.0,1.0 +2,11,202,154,normal,0.0,1.0,,,0.0,1.0 +2,11,202,155,normal,0.0,1.0,,,0.0,1.0 +2,11,202,156,normal,0.0,1.0,,,0.0,1.0 +2,11,202,157,normal,0.0,1.0,,,0.0,1.0 +2,11,202,158,normal,0.0,1.0,,,0.0,1.0 +2,11,202,159,normal,0.0,1.0,,,0.0,1.0 +2,11,202,160,normal,0.0,1.0,,,0.0,1.0 +2,11,202,161,normal,0.0,1.0,,,0.0,1.0 +2,11,202,162,normal,0.0,1.0,,,0.0,1.0 +2,11,202,163,normal,0.0,1.0,,,0.0,1.0 +2,11,202,164,normal,0.0,1.0,,,0.0,1.0 +2,11,202,165,normal,0.0,1.0,,,0.0,1.0 +2,11,202,166,normal,0.0,1.0,,,0.0,1.0 +2,11,202,167,normal,0.0,1.0,,,0.0,1.0 +2,11,202,168,normal,0.0,1.0,,,0.0,1.0 +2,11,202,169,normal,0.0,1.0,,,0.0,1.0 +2,11,202,170,normal,0.0,1.0,,,0.0,1.0 +2,11,202,171,normal,0.0,1.0,,,0.0,1.0 +2,11,202,172,normal,0.0,1.0,,,0.0,1.0 +2,11,202,173,normal,0.0,1.0,,,0.0,1.0 +2,11,202,174,normal,0.0,1.0,,,0.0,1.0 +2,11,202,175,normal,0.0,1.0,,,0.0,1.0 +2,11,202,176,normal,0.0,1.0,,,0.0,1.0 +2,11,202,177,normal,0.0,1.0,,,0.0,1.0 +2,11,202,178,normal,0.0,1.0,,,0.0,1.0 +2,11,202,179,normal,0.0,1.0,,,0.0,1.0 +2,11,202,180,normal,0.0,1.0,,,0.0,1.0 +2,11,202,181,normal,0.0,1.0,,,0.0,1.0 +2,11,202,182,normal,0.0,1.0,,,0.0,1.0 +2,11,202,183,normal,0.0,1.0,,,0.0,1.0 +2,11,202,184,normal,0.0,1.0,,,0.0,1.0 +2,11,202,185,normal,0.0,1.0,,,0.0,1.0 +2,11,202,186,normal,0.0,1.0,,,0.0,1.0 +2,11,202,187,normal,0.0,1.0,,,0.0,1.0 +2,11,202,188,normal,0.0,1.0,,,0.0,1.0 +2,11,202,189,normal,0.0,1.0,,,0.0,1.0 +2,11,202,190,normal,0.0,1.0,,,0.0,1.0 +2,11,202,191,normal,0.0,1.0,,,0.0,1.0 +2,11,202,192,normal,0.0,1.0,,,0.0,1.0 +2,11,202,193,normal,0.0,1.0,,,0.0,1.0 +2,11,202,194,normal,0.0,1.0,,,0.0,1.0 +2,11,202,195,normal,0.0,1.0,,,0.0,1.0 +2,11,202,196,normal,0.0,1.0,,,0.0,1.0 +2,11,202,197,normal,0.0,1.0,,,0.0,1.0 +2,11,202,198,normal,0.0,1.0,,,0.0,1.0 +2,11,202,199,normal,0.0,1.0,,,0.0,1.0 +2,11,202,200,normal,0.0,1.0,,,0.0,1.0 +2,11,202,201,normal,0.0,1.0,,,0.0,1.0 +2,11,202,202,normal,0.0,1.0,,,0.0,1.0 +2,11,202,203,normal,0.0,1.0,,,0.0,1.0 +2,11,202,204,normal,0.0,1.0,,,0.0,1.0 +2,11,202,205,normal,0.0,1.0,,,0.0,1.0 +2,11,202,206,normal,0.0,1.0,,,0.0,1.0 +2,11,202,207,normal,0.0,1.0,,,0.0,1.0 +2,11,202,208,normal,0.0,1.0,,,0.0,1.0 +2,11,202,209,normal,0.0,1.0,,,0.0,1.0 +2,11,202,210,normal,0.0,1.0,,,0.0,1.0 +2,11,202,211,normal,0.0,1.0,,,0.0,1.0 +2,11,202,212,normal,0.0,1.0,,,0.0,1.0 +2,11,202,213,normal,0.0,1.0,,,0.0,1.0 +2,11,202,214,normal,0.0,1.0,,,0.0,1.0 +2,11,202,215,normal,0.0,1.0,,,0.0,1.0 +2,11,202,216,normal,0.0,1.0,,,0.0,1.0 +2,11,202,217,normal,0.0,1.0,,,0.0,1.0 +2,11,202,218,normal,0.0,1.0,,,0.0,1.0 +2,11,202,219,normal,0.0,1.0,,,0.0,1.0 +2,11,202,220,normal,0.0,1.0,,,0.0,1.0 +2,11,202,221,normal,0.0,1.0,,,0.0,1.0 +2,11,202,222,normal,0.0,1.0,,,0.0,1.0 +2,11,202,223,normal,0.0,1.0,,,0.0,1.0 +2,11,202,224,normal,0.0,1.0,,,0.0,1.0 +2,11,202,225,normal,0.0,1.0,,,0.0,1.0 diff --git a/otbenchmark/BBRCDistribution.py b/otbenchmark/BBRCDistribution.py new file mode 100644 index 0000000..fe496e7 --- /dev/null +++ b/otbenchmark/BBRCDistribution.py @@ -0,0 +1,65 @@ +#!/usr/bin/python +# coding:utf-8 +# Copyright 2020 EDF +"""Class to create an OpenTURNS distribution out of a Black Box Reliability Challenge + problem""" + +import openturns as ot +import pandas as pd + + +class BBRCDistribution: + """Class to create an OpenTURNS distribution out of a Black Box Reliability + Challenge problem""" + + def __init__(self, set_id, problem_id): + """ + Creates an ot.CcomposedDistribution from the BBRC 2019 distribution table. + References + ---------- + https://rprepo.readthedocs.io/en/latest/ + Parameters + ---------- + set_id: int + First item defining the reliability problem selected. + problem_id: int + Second item defining the reliability problem selected. + """ + self.set_id = set_id + self.problem_id = problem_id + return None + + def switch_build_dist(self, dist_name, a, b, mean, std): + if dist_name == "uniform": + a_dist = ot.Uniform(a, b) + elif dist_name == "exponential": + a_dist = ot.Exponential(a) + elif dist_name == "normal": + a_dist = ot.Normal(a, b) + elif dist_name == "gumbel_max": + a_dist = ot.ParametrizedDistribution(ot.GumbelMuSigma(mean, std)) + elif dist_name == "lognormal": + a_dist = ot.ParametrizedDistribution(ot.LogNormalMuSigma(mean, std)) + return a_dist + + def build_composed_dist(self): + bbrc_dist_table = pd.read_csv("./distributions/probabilistic_models_up.csv") + my_dist_table = bbrc_dist_table[ + (bbrc_dist_table["problem_id"] == self.problem_id) + & (bbrc_dist_table["set_id"] == self.set_id) + ] + + ot_dist_list = [] + for raw_index in my_dist_table.index: + raw = my_dist_table.loc[raw_index] + ot_dist_list.append( + self.switch_build_dist( + raw["distribution_type"], + raw["theta_1"], + raw["theta_2"], + raw["mean"], + raw["std"], + ) + ) + composed_dist = ot.ComposedDistribution(ot_dist_list) + return composed_dist diff --git a/otbenchmark/RequestedBBRCProblem.py b/otbenchmark/RequestedBBRCProblem.py index 3711f1d..81675dc 100644 --- a/otbenchmark/RequestedBBRCProblem.py +++ b/otbenchmark/RequestedBBRCProblem.py @@ -4,9 +4,9 @@ """Class to define a benchmark problem using http requests from the BBRC 2019 server.""" from otbenchmark.ReliabilityBenchmarkProblem import ReliabilityBenchmarkProblem +from otbenchmark.BBRCDistribution import BBRCDistribution from otbenchmark import evaluate import openturns as ot -import pandas as pd import numpy as np @@ -38,59 +38,25 @@ def g_fun(x): g_val_sys, g_val_comp, msg = evaluate.evaluate( self.username, self.password, self.set_id, self.problem_id, x ) - print(g_val_comp) return g_val_comp - bbrc_problem_table = pd.DataFrame( - [], - columns=[ - "name", - "set_id", - "problem_id", - "input_dim", - "output_dim", - "beta", - "input_composed_distribution", - ], - ) - bbrc_problem_table = bbrc_problem_table.astype("object") - # import a csv with all the corresponding elements. Next line is for the example - # corresponding to the RP8 - bbrc_problem_table.loc[0] = [ - "RP 8", - -1, - 1, - 6, - 1, - 3.16, - ot.ComposedDistribution( - ( - ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), - ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), - ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), - ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), - ot.ParametrizedDistribution(ot.LogNormalMuSigma(50, 10)), - ot.ParametrizedDistribution(ot.LogNormalMuSigma(40, 8)), - ) - ), - ] - bbrc_problem_raw = bbrc_problem_table[ - (bbrc_problem_table["problem_id"] == self.problem_id) - & (bbrc_problem_table["set_id"] == self.set_id) - ] - input_dim = int(bbrc_problem_raw["input_dim"]) - output_dim = int(bbrc_problem_raw["output_dim"]) - inputDistribution = bbrc_problem_raw["input_composed_distribution"][0] + # BBRCDistribution + my_dist = BBRCDistribution(self.set_id, self.problem_id) + inputDistribution = my_dist.build_composed_dist() inputRandomVector = ot.RandomVector(inputDistribution) - + input_dim = inputDistribution.getDimension() + # TO DO ################## + # BBRCFunction + name = "RP8" + beta = 3.16 + output_dim = 1 + ########################## limitStateFunction = ot.PythonFunction(input_dim, output_dim, g_fun) outputRandomVector = ot.CompositeRandomVector( limitStateFunction, inputRandomVector ) thresholdEvent = ot.ThresholdEvent(outputRandomVector, ot.Less(), 0.0) - name = bbrc_problem_raw["name"] - beta = bbrc_problem_raw["beta"] probability = ot.Normal().computeComplementaryCDF(beta) super(RequestedBBRCProblem, self).__init__(name, thresholdEvent, probability) diff --git a/otbenchmark/__init__.py b/otbenchmark/__init__.py index b89f450..86c150f 100644 --- a/otbenchmark/__init__.py +++ b/otbenchmark/__init__.py @@ -31,6 +31,7 @@ from .FourBranchSerialSystemReliabilityBenchmarkProblem import ( FourBranchSerialSystemReliabilityBenchmarkProblem, ) +from .RequestedBBRCProblem import RequestedBBRCProblem # from .CentralDispersionBenchmarkProblem import # CentralDispersionBenchmarkProblem @@ -64,5 +65,6 @@ "ReliabilityProblem91", "ReliabilityProblem63", "FourBranchSerialSystemReliabilityBenchmarkProblem", + "RequestedBBRCProblem", ] __version__ = "1.0" diff --git a/requirements.txt b/requirements.txt index 8759e2e..4a95ff7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,6 +2,7 @@ numpy==1.16.* matplotlib==2.* scipy==1.* openturns>=1.14 +pandas jupyterlab nbconvert black From c438f64347968d68df86db507301374065929668 Mon Sep 17 00:00:00 2001 From: Elias Fekhari Date: Wed, 13 May 2020 18:55:21 +0200 Subject: [PATCH 3/5] Adding Beta table requested BBRC correction notebook circleci issue notebook circleci issue second try minor changes --- examples/RequestedBBRCProblem.ipynb | 6 ++-- examples/distributions/beta_results.csv | 30 ++++++++++++++++++ otbenchmark/BBRCDistribution.py | 42 +++++++++++++++---------- otbenchmark/RequestedBBRCProblem.py | 17 +++++----- 4 files changed, 69 insertions(+), 26 deletions(-) create mode 100644 examples/distributions/beta_results.csv diff --git a/examples/RequestedBBRCProblem.ipynb b/examples/RequestedBBRCProblem.ipynb index 3c0d0d4..7b4f34e 100644 --- a/examples/RequestedBBRCProblem.ipynb +++ b/examples/RequestedBBRCProblem.ipynb @@ -60,7 +60,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -74,7 +74,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "python3_cours", "language": "python", "name": "python3" }, @@ -88,7 +88,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6-final" + "version": "3.7.6" } }, "nbformat": 4, diff --git a/examples/distributions/beta_results.csv b/examples/distributions/beta_results.csv new file mode 100644 index 0000000..715e6aa --- /dev/null +++ b/examples/distributions/beta_results.csv @@ -0,0 +1,30 @@ +set_id,problem_id,reliability_problem_id,beta +-1,1,8,3.16 +-1,2,22,2.64 +1,1,14,2.42 +1,2,24,2.76 +1,3,28,5.11 +1,4,31,3.58 +1,5,38,2.48 +1,6,53,1.86 +1,7,54,3.09 +1,8,63,3.36 +1,9,75,2.33 +1,10,107,5.0 +1,11,111,4.81 +1,12,201,3.7 +1,13,203,4.92 +1,14,213,3.45 +1,15,300,3.88 +1,16,301,3.81 +2,1,25,4.36 +2,2,33,2.80 +2,3,35,2.70 +2,4,55,-0.15 +2,5,57,1.91 +2,6,60,1.70 +2,7,77,5.0 +2,8,89,2.55 +2,9,91,3.19 +2,10,110,4.0 +2,11,202,3.43 \ No newline at end of file diff --git a/otbenchmark/BBRCDistribution.py b/otbenchmark/BBRCDistribution.py index fe496e7..cb4d496 100644 --- a/otbenchmark/BBRCDistribution.py +++ b/otbenchmark/BBRCDistribution.py @@ -14,7 +14,7 @@ class BBRCDistribution: def __init__(self, set_id, problem_id): """ - Creates an ot.CcomposedDistribution from the BBRC 2019 distribution table. + Creates an ot.ComposedDistribution from the BBRC 2019 distribution table. References ---------- https://rprepo.readthedocs.io/en/latest/ @@ -29,21 +29,31 @@ def __init__(self, set_id, problem_id): self.problem_id = problem_id return None - def switch_build_dist(self, dist_name, a, b, mean, std): - if dist_name == "uniform": - a_dist = ot.Uniform(a, b) - elif dist_name == "exponential": - a_dist = ot.Exponential(a) - elif dist_name == "normal": - a_dist = ot.Normal(a, b) - elif dist_name == "gumbel_max": - a_dist = ot.ParametrizedDistribution(ot.GumbelMuSigma(mean, std)) - elif dist_name == "lognormal": - a_dist = ot.ParametrizedDistribution(ot.LogNormalMuSigma(mean, std)) - return a_dist - def build_composed_dist(self): - bbrc_dist_table = pd.read_csv("./distributions/probabilistic_models_up.csv") + """ + Builds an ot.ComposedDistribution from the BBRC 2019 distribution table for the + corresponding set_id and problem_id defined in the constructor. + """ + + def switch_build_dist(dist_name, a, b, mean, std): + if dist_name == "uniform": + a_dist = ot.Uniform(a, b) + elif dist_name == "exponential": + a_dist = ot.Exponential(a) + elif dist_name == "normal": + a_dist = ot.Normal(a, b) + elif dist_name == "gumbel_max": + a_dist = ot.ParametrizedDistribution(ot.GumbelMuSigma(mean, std)) + elif dist_name == "lognormal": + a_dist = ot.ParametrizedDistribution(ot.LogNormalMuSigma(mean, std)) + else: + raise ValueError( + "Distribution not defined correctly in \ + probabilistic_models.csv file" + ) + return a_dist + + bbrc_dist_table = pd.read_csv("./distributions/probabilistic_models.csv") my_dist_table = bbrc_dist_table[ (bbrc_dist_table["problem_id"] == self.problem_id) & (bbrc_dist_table["set_id"] == self.set_id) @@ -53,7 +63,7 @@ def build_composed_dist(self): for raw_index in my_dist_table.index: raw = my_dist_table.loc[raw_index] ot_dist_list.append( - self.switch_build_dist( + switch_build_dist( raw["distribution_type"], raw["theta_1"], raw["theta_2"], diff --git a/otbenchmark/RequestedBBRCProblem.py b/otbenchmark/RequestedBBRCProblem.py index 81675dc..e7cd0ad 100644 --- a/otbenchmark/RequestedBBRCProblem.py +++ b/otbenchmark/RequestedBBRCProblem.py @@ -8,6 +8,7 @@ from otbenchmark import evaluate import openturns as ot import numpy as np +import pandas as pd class RequestedBBRCProblem(ReliabilityBenchmarkProblem): @@ -45,13 +46,15 @@ def g_fun(x): inputDistribution = my_dist.build_composed_dist() inputRandomVector = ot.RandomVector(inputDistribution) input_dim = inputDistribution.getDimension() - # TO DO ################## - # BBRCFunction - name = "RP8" - beta = 3.16 - output_dim = 1 - ########################## - limitStateFunction = ot.PythonFunction(input_dim, output_dim, g_fun) + # BBRCResults + bbrc_result_table = pd.read_csv("./distributions/beta_results.csv") + my_result = bbrc_result_table[ + (bbrc_result_table["problem_id"] == self.problem_id) + & (bbrc_result_table["set_id"] == self.set_id) + ] + name = "RP" + str(my_result["reliability_problem_id"].values[0]) + beta = my_result["beta"].values[0] + limitStateFunction = ot.PythonFunction(input_dim, 1, g_fun) outputRandomVector = ot.CompositeRandomVector( limitStateFunction, inputRandomVector ) From d8469db0a9d6dd9ed78872560d80bb9f42034862 Mon Sep 17 00:00:00 2001 From: Elias Fekhari Date: Sun, 17 May 2020 12:58:39 +0200 Subject: [PATCH 4/5] Import distribution and beta table with numpy notebook metadata environnement name --- examples/RequestedBBRCProblem.ipynb | 21 +++++++++++++-------- otbenchmark/BBRCDistribution.py | 13 +++++++++---- otbenchmark/RequestedBBRCProblem.py | 10 ++++++---- tests/test_ReliabilityProblem110.py | 11 +++++------ tests/test_ReliabilityProblem111.py | 11 +++++------ tests/test_ReliabilityProblem22.py | 10 +++++----- tests/test_ReliabilityProblem24.py | 10 +++++----- tests/test_ReliabilityProblem25.py | 10 +++++----- tests/test_ReliabilityProblem28.py | 13 ++++++------- tests/test_ReliabilityProblem31.py | 6 ++---- tests/test_ReliabilityProblem35.py | 10 +++++----- tests/test_ReliabilityProblem53.py | 12 +++++------- tests/test_ReliabilityProblem55.py | 7 ++----- tests/test_ReliabilityProblem57.py | 11 +++++------ tests/test_ReliabilityProblem75.py | 12 ++++++------ tests/test_ReliabilityProblem89.py | 11 +++++------ 16 files changed, 89 insertions(+), 89 deletions(-) diff --git a/examples/RequestedBBRCProblem.ipynb b/examples/RequestedBBRCProblem.ipynb index 7b4f34e..ecd0948 100644 --- a/examples/RequestedBBRCProblem.ipynb +++ b/examples/RequestedBBRCProblem.ipynb @@ -23,9 +23,16 @@ "cell_type": "code", "execution_count": 2, "metadata": {}, - "outputs": [], + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": "RP8\n" + } + ], "source": [ - "problem = otb.RequestedBBRCProblem(\"testuser\", \"testpass\", -1, 1)" + "problem = otb.RequestedBBRCProblem(\"testuser\", \"testpass\", -1, 1)\n", + "print(problem.name)" ] }, { @@ -44,14 +51,12 @@ "metadata": {}, "outputs": [ { + "output_type": "execute_result", "data": { - "text/plain": [ - "0.0007888456943755395" - ] + "text/plain": "0.0007888456943755395" }, - "execution_count": 4, "metadata": {}, - "output_type": "execute_result" + "execution_count": 4 } ], "source": [ @@ -88,7 +93,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.7.6-final" } }, "nbformat": 4, diff --git a/otbenchmark/BBRCDistribution.py b/otbenchmark/BBRCDistribution.py index cb4d496..aa4a378 100644 --- a/otbenchmark/BBRCDistribution.py +++ b/otbenchmark/BBRCDistribution.py @@ -5,7 +5,7 @@ problem""" import openturns as ot -import pandas as pd +import numpy as np class BBRCDistribution: @@ -53,15 +53,20 @@ def switch_build_dist(dist_name, a, b, mean, std): ) return a_dist - bbrc_dist_table = pd.read_csv("./distributions/probabilistic_models.csv") + types = ["i4", "i4", "i4", "i4", "U15", "f8", "f8", "f8", "f8", "f8", "f8"] + bbrc_dist_table = np.genfromtxt( + "./distributions/probabilistic_models.csv", + dtype=types, + delimiter=",", + names=True, + ) my_dist_table = bbrc_dist_table[ (bbrc_dist_table["problem_id"] == self.problem_id) & (bbrc_dist_table["set_id"] == self.set_id) ] ot_dist_list = [] - for raw_index in my_dist_table.index: - raw = my_dist_table.loc[raw_index] + for raw in my_dist_table: ot_dist_list.append( switch_build_dist( raw["distribution_type"], diff --git a/otbenchmark/RequestedBBRCProblem.py b/otbenchmark/RequestedBBRCProblem.py index e7cd0ad..6ae3f3b 100644 --- a/otbenchmark/RequestedBBRCProblem.py +++ b/otbenchmark/RequestedBBRCProblem.py @@ -8,7 +8,6 @@ from otbenchmark import evaluate import openturns as ot import numpy as np -import pandas as pd class RequestedBBRCProblem(ReliabilityBenchmarkProblem): @@ -47,13 +46,16 @@ def g_fun(x): inputRandomVector = ot.RandomVector(inputDistribution) input_dim = inputDistribution.getDimension() # BBRCResults - bbrc_result_table = pd.read_csv("./distributions/beta_results.csv") + types = ["i4", "i4", "i4", "f8"] + bbrc_result_table = np.genfromtxt( + "./distributions/beta_results.csv", dtype=types, delimiter=",", names=True + ) my_result = bbrc_result_table[ (bbrc_result_table["problem_id"] == self.problem_id) & (bbrc_result_table["set_id"] == self.set_id) ] - name = "RP" + str(my_result["reliability_problem_id"].values[0]) - beta = my_result["beta"].values[0] + name = "RP" + str(my_result["reliability_problem_id"][0]) + beta = my_result["beta"][0] limitStateFunction = ot.PythonFunction(input_dim, 1, g_fun) outputRandomVector = ot.CompositeRandomVector( limitStateFunction, inputRandomVector diff --git a/tests/test_ReliabilityProblem110.py b/tests/test_ReliabilityProblem110.py index 230f59d..e74378a 100644 --- a/tests/test_ReliabilityProblem110.py +++ b/tests/test_ReliabilityProblem110.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem89(unittest.TestCase): - def test_ReliabilityBenchmarkProblem110(self): problem = otb.ReliabilityProblem110() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem110(self): # Check probability pf = problem.getProbability() pf_exacte = 0.0000319 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 0.85) def test_UseCase(self): @@ -46,13 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() - diff --git a/tests/test_ReliabilityProblem111.py b/tests/test_ReliabilityProblem111.py index 0740eeb..a50822e 100644 --- a/tests/test_ReliabilityProblem111.py +++ b/tests/test_ReliabilityProblem111.py @@ -12,7 +12,6 @@ class CheckReliabilityProblem111(unittest.TestCase): - def test_ReliabilityBenchmarkProblem111(self): problem = otb.ReliabilityProblem111() print(problem) @@ -20,14 +19,14 @@ def test_ReliabilityBenchmarkProblem111(self): # Check probability pf = problem.getProbability() pf_exacte = 7.65e-7 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 12.5) def test_UseCase(self): @@ -45,13 +44,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() - diff --git a/tests/test_ReliabilityProblem22.py b/tests/test_ReliabilityProblem22.py index f43b2f1..5bebf48 100644 --- a/tests/test_ReliabilityProblem22.py +++ b/tests/test_ReliabilityProblem22.py @@ -14,7 +14,6 @@ class CheckReliabilityProblem22(unittest.TestCase): - def test_ReliabilityBenchmarkProblem22(self): problem = otb.ReliabilityProblem22() print(problem) @@ -22,14 +21,14 @@ def test_ReliabilityBenchmarkProblem22(self): # Check probability pf = problem.getProbability() pf_exacte = 0.00416 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 2.5) def test_UseCase(self): @@ -47,12 +46,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() diff --git a/tests/test_ReliabilityProblem24.py b/tests/test_ReliabilityProblem24.py index 0e009d0..801304e 100644 --- a/tests/test_ReliabilityProblem24.py +++ b/tests/test_ReliabilityProblem24.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem24(unittest.TestCase): - def test_ReliabilityBenchmarkProblem24(self): problem = otb.ReliabilityProblem24() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem24(self): # Check probability pf = problem.getProbability() pf_exacte = 0.00286 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [10.0, 10.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 2.5) def test_UseCase(self): @@ -46,12 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() diff --git a/tests/test_ReliabilityProblem25.py b/tests/test_ReliabilityProblem25.py index 201d262..acfb5f9 100644 --- a/tests/test_ReliabilityProblem25.py +++ b/tests/test_ReliabilityProblem25.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem25(unittest.TestCase): - def test_ReliabilityBenchmarkProblem25(self): problem = otb.ReliabilityProblem25() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem25(self): # Check probability pf = problem.getProbability() pf_exacte = 0.00000614 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 32.0) def test_UseCase(self): @@ -46,12 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() diff --git a/tests/test_ReliabilityProblem28.py b/tests/test_ReliabilityProblem28.py index d67580d..353fa8b 100644 --- a/tests/test_ReliabilityProblem28.py +++ b/tests/test_ReliabilityProblem28.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem28(unittest.TestCase): - def test_ReliabilityBenchmarkProblem28(self): problem = otb.ReliabilityProblem28() print(problem) @@ -21,15 +20,15 @@ def test_ReliabilityBenchmarkProblem28(self): # Check probability pf = problem.getProbability() pf_exacte = 0.000000146 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) - np.testing.assert_allclose(Y[0], - 146.14) + assert type(Y) is ot.Point + np.testing.assert_allclose(Y[0], -146.14) def test_UseCase(self): problem = otb.ReliabilityProblem28() @@ -46,13 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() - diff --git a/tests/test_ReliabilityProblem31.py b/tests/test_ReliabilityProblem31.py index 50ebeda..33b6dad 100644 --- a/tests/test_ReliabilityProblem31.py +++ b/tests/test_ReliabilityProblem31.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem31(unittest.TestCase): - def test_ReliabilityBenchmarkProblem31(self): problem = otb.ReliabilityProblem31() print(problem) @@ -21,17 +20,16 @@ def test_ReliabilityBenchmarkProblem31(self): # Check probability pf = problem.getProbability() pf_exacte = 0.00018 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 2) if __name__ == "__main__": unittest.main() - diff --git a/tests/test_ReliabilityProblem35.py b/tests/test_ReliabilityProblem35.py index a9bbd94..b3ef9e3 100644 --- a/tests/test_ReliabilityProblem35.py +++ b/tests/test_ReliabilityProblem35.py @@ -12,7 +12,6 @@ class CheckReliabilityProblem35(unittest.TestCase): - def test_ReliabilityBenchmarkProblem35(self): problem = otb.ReliabilityProblem35() print(problem) @@ -20,14 +19,14 @@ def test_ReliabilityBenchmarkProblem35(self): # Check probability pf = problem.getProbability() pf_exacte = 0.00354 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 3) def test_UseCase(self): @@ -45,12 +44,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() diff --git a/tests/test_ReliabilityProblem53.py b/tests/test_ReliabilityProblem53.py index a78cf4d..e0a8c8b 100644 --- a/tests/test_ReliabilityProblem53.py +++ b/tests/test_ReliabilityProblem53.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem53(unittest.TestCase): - def test_ReliabilityBenchmarkProblem53(self): problem = otb.ReliabilityProblem53() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem53(self): # Check probability pf = problem.getProbability() pf_exacte = 0.0313 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 1.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 2) def test_UseCase(self): @@ -46,14 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() - - diff --git a/tests/test_ReliabilityProblem55.py b/tests/test_ReliabilityProblem55.py index 9037b3f..8b74cba 100644 --- a/tests/test_ReliabilityProblem55.py +++ b/tests/test_ReliabilityProblem55.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem55(unittest.TestCase): - def test_ReliabilityBenchmarkProblem55(self): problem = otb.ReliabilityProblem55() print(problem) @@ -21,18 +20,16 @@ def test_ReliabilityBenchmarkProblem55(self): # Check probability pf = problem.getProbability() pf_exacte = 0.36 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-7) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-7) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 0.2) - if __name__ == "__main__": unittest.main() - diff --git a/tests/test_ReliabilityProblem57.py b/tests/test_ReliabilityProblem57.py index 05bb297..dcfd2ed 100644 --- a/tests/test_ReliabilityProblem57.py +++ b/tests/test_ReliabilityProblem57.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem57(unittest.TestCase): - def test_ReliabilityBenchmarkProblem57(self): problem = otb.ReliabilityProblem57() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem57(self): # Check probability pf = problem.getProbability() pf_exacte = 0.0284 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 3) def test_UseCase(self): @@ -46,13 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() - diff --git a/tests/test_ReliabilityProblem75.py b/tests/test_ReliabilityProblem75.py index 0ee05f4..da7e831 100644 --- a/tests/test_ReliabilityProblem75.py +++ b/tests/test_ReliabilityProblem75.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem75(unittest.TestCase): - def test_ReliabilityBenchmarkProblem75(self): problem = otb.ReliabilityProblem75() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem75(self): # Check probability pf = problem.getProbability() pf_exacte = 0.0107 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 3) def test_UseCase(self): @@ -46,12 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": - unittest.main() \ No newline at end of file + unittest.main() diff --git a/tests/test_ReliabilityProblem89.py b/tests/test_ReliabilityProblem89.py index ebb31b4..03e5334 100644 --- a/tests/test_ReliabilityProblem89.py +++ b/tests/test_ReliabilityProblem89.py @@ -13,7 +13,6 @@ class CheckReliabilityProblem89(unittest.TestCase): - def test_ReliabilityBenchmarkProblem89(self): problem = otb.ReliabilityProblem89() print(problem) @@ -21,14 +20,14 @@ def test_ReliabilityBenchmarkProblem89(self): # Check probability pf = problem.getProbability() pf_exacte = 0.00543 - np.testing.assert_allclose(pf, pf_exacte, rtol=1.e-15) + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) # Check function event = problem.getEvent() function = event.getFunction() X = [0.0, 0.0] Y = function(X) - assert(type(Y) is ot.Point) + assert type(Y) is ot.Point np.testing.assert_allclose(Y[0], 6) def test_UseCase(self): @@ -46,13 +45,13 @@ def test_UseCase(self): result = algo.getResult() computed_pf = result.getProbabilityEstimate() exact_pf = problem.getProbability() - print('exact_pf=', exact_pf) - print('computed_pf=', computed_pf) + print("exact_pf=", exact_pf) + print("computed_pf=", computed_pf) samplesize = result.getOuterSampling() * result.getBlockSize() print("Sample size : ", samplesize) atol = 1.0 / np.sqrt(samplesize) np.testing.assert_allclose(computed_pf, exact_pf, atol=atol) + if __name__ == "__main__": unittest.main() - From 9be744f5197e002e476f114408840e9726257602 Mon Sep 17 00:00:00 2001 From: Elias Fekhari Date: Mon, 8 Jun 2020 17:21:53 +0200 Subject: [PATCH 5/5] Tests added for BBRC request classes Add distribution file in otbenchmark rep. Add distribution file in otbenchmark rep. 2 Add distribution file in otbenchmark rep. 3 --- examples/RequestedBBRCProblem.ipynb | 33 +- otbenchmark/BBRCDistribution.py | 4 +- otbenchmark/RequestedBBRCProblem.py | 7 +- otbenchmark/__init__.py | 2 + otbenchmark/distributions/beta_results.csv | 30 ++ .../distributions/probabilistic_models.csv | 480 ++++++++++++++++++ .../distributions/probabilistic_models_up.csv | 480 ++++++++++++++++++ requirements.txt | 1 - tests/test_BBRCDistribution.py | 33 ++ tests/test_RequestedBBRCProblem.py | 31 ++ 10 files changed, 1093 insertions(+), 8 deletions(-) create mode 100644 otbenchmark/distributions/beta_results.csv create mode 100644 otbenchmark/distributions/probabilistic_models.csv create mode 100644 otbenchmark/distributions/probabilistic_models_up.csv create mode 100644 tests/test_BBRCDistribution.py create mode 100644 tests/test_RequestedBBRCProblem.py diff --git a/examples/RequestedBBRCProblem.ipynb b/examples/RequestedBBRCProblem.ipynb index ecd0948..ae931a2 100644 --- a/examples/RequestedBBRCProblem.ipynb +++ b/examples/RequestedBBRCProblem.ipynb @@ -4,9 +4,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Test de la classe RequestedBBRCProblem\n", + "# RequestedBBRCProblem class use case\n", "\n", - "L'objectif de cet exemple est de présenter l'utilisation de la classe RequestedBBRCProblem" + "This example presents a simple use of the RequestedBBRCProblem class." ] }, { @@ -71,15 +71,38 @@ "source": [ "# Create the Monte-Carlo algorithm\n", "algoProb = ot.ProbabilitySimulationAlgorithm(event)\n", + "# MaximumOuterSampling set to a very low value to make a fast example.\n", + "# More realistic parameter value (e.g. 1000).\n", "algoProb.setMaximumOuterSampling(10)\n", "algoProb.setMaximumCoefficientOfVariation(0.01)\n", "algoProb.run()" ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": "Number of function calls = 10\nFailure Probability = 0.0000\n" + } + ], + "source": [ + "# Get the results\n", + "resultAlgo = algoProb.getResult()\n", + "neval = g.getEvaluationCallsNumber()\n", + "print(\"Number of function calls = %d\" % (neval))\n", + "# Because of the low value of the maximumOuterSampling, the estimate is not very accurate.\n", + "pf = resultAlgo.getProbabilityEstimate()\n", + "print(\"Failure Probability = %.4f\" % (pf))" + ] } ], "metadata": { "kernelspec": { - "display_name": "python3_cours", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -93,9 +116,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6-final" + "version": "3.7.3-final" } }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/otbenchmark/BBRCDistribution.py b/otbenchmark/BBRCDistribution.py index aa4a378..65e113c 100644 --- a/otbenchmark/BBRCDistribution.py +++ b/otbenchmark/BBRCDistribution.py @@ -15,9 +15,11 @@ class BBRCDistribution: def __init__(self, set_id, problem_id): """ Creates an ot.ComposedDistribution from the BBRC 2019 distribution table. + References ---------- https://rprepo.readthedocs.io/en/latest/ + Parameters ---------- set_id: int @@ -55,7 +57,7 @@ def switch_build_dist(dist_name, a, b, mean, std): types = ["i4", "i4", "i4", "i4", "U15", "f8", "f8", "f8", "f8", "f8", "f8"] bbrc_dist_table = np.genfromtxt( - "./distributions/probabilistic_models.csv", + "otbenchmark/distributions/probabilistic_models.csv", dtype=types, delimiter=",", names=True, diff --git a/otbenchmark/RequestedBBRCProblem.py b/otbenchmark/RequestedBBRCProblem.py index 6ae3f3b..c493452 100644 --- a/otbenchmark/RequestedBBRCProblem.py +++ b/otbenchmark/RequestedBBRCProblem.py @@ -14,9 +14,11 @@ class RequestedBBRCProblem(ReliabilityBenchmarkProblem): def __init__(self, username, password, set_id, problem_id): """ Creates a ot.PythonFunction requesting a BBRC 2019 function using http requests. + References ---------- https://rprepo.readthedocs.io/en/latest/ + Parameters ---------- username: str @@ -48,7 +50,10 @@ def g_fun(x): # BBRCResults types = ["i4", "i4", "i4", "f8"] bbrc_result_table = np.genfromtxt( - "./distributions/beta_results.csv", dtype=types, delimiter=",", names=True + "otbenchmark/distributions/beta_results.csv", + dtype=types, + delimiter=",", + names=True, ) my_result = bbrc_result_table[ (bbrc_result_table["problem_id"] == self.problem_id) diff --git a/otbenchmark/__init__.py b/otbenchmark/__init__.py index 86c150f..aabb53d 100644 --- a/otbenchmark/__init__.py +++ b/otbenchmark/__init__.py @@ -32,6 +32,7 @@ FourBranchSerialSystemReliabilityBenchmarkProblem, ) from .RequestedBBRCProblem import RequestedBBRCProblem +from .BBRCDistribution import BBRCDistribution # from .CentralDispersionBenchmarkProblem import # CentralDispersionBenchmarkProblem @@ -66,5 +67,6 @@ "ReliabilityProblem63", "FourBranchSerialSystemReliabilityBenchmarkProblem", "RequestedBBRCProblem", + "BBRCDistribution", ] __version__ = "1.0" diff --git a/otbenchmark/distributions/beta_results.csv b/otbenchmark/distributions/beta_results.csv new file mode 100644 index 0000000..715e6aa --- /dev/null +++ b/otbenchmark/distributions/beta_results.csv @@ -0,0 +1,30 @@ +set_id,problem_id,reliability_problem_id,beta +-1,1,8,3.16 +-1,2,22,2.64 +1,1,14,2.42 +1,2,24,2.76 +1,3,28,5.11 +1,4,31,3.58 +1,5,38,2.48 +1,6,53,1.86 +1,7,54,3.09 +1,8,63,3.36 +1,9,75,2.33 +1,10,107,5.0 +1,11,111,4.81 +1,12,201,3.7 +1,13,203,4.92 +1,14,213,3.45 +1,15,300,3.88 +1,16,301,3.81 +2,1,25,4.36 +2,2,33,2.80 +2,3,35,2.70 +2,4,55,-0.15 +2,5,57,1.91 +2,6,60,1.70 +2,7,77,5.0 +2,8,89,2.55 +2,9,91,3.19 +2,10,110,4.0 +2,11,202,3.43 \ No newline at end of file diff --git a/otbenchmark/distributions/probabilistic_models.csv b/otbenchmark/distributions/probabilistic_models.csv new file mode 100644 index 0000000..410b6da --- /dev/null +++ b/otbenchmark/distributions/probabilistic_models.csv @@ -0,0 +1,480 @@ +set_id,problem_id,reliability_problem_id,random_variable,distribution_type,theta_1,theta_2,theta_3,theta_4,mean,std +-1,1,8,1,lognormal,,,,,120,12 +-1,1,8,2,lognormal,,,,,120,12 +-1,1,8,3,lognormal,,,,,120,12 +-1,1,8,4,lognormal,,,,,120,12 +-1,1,8,5,lognormal,,,,,50,10 +-1,1,8,6,lognormal,,,,,40,8 +-1,2,22,1,normal,0,1,,,, +-1,2,22,2,normal,0,1,,,, +1,1,14,1,uniform,70,80,,,, +1,1,14,2,normal,39,0.1,,,, +1,1,14,3,gumbel_max,1342.48,272.89,,,1500,350 +1,1,14,4,normal,400,0.1,,,, +1,1,14,5,normal,250000,35000,,,, +1,2,24,1,normal,10,3,,,, +1,2,24,2,normal,10,3,,,, +1,3,28,1,normal,78064.4,11709.7,,,, +1,3,28,2,normal,0.0104,0.00156,,,, +1,4,31,1,normal,0,1,,,, +1,4,31,2,normal,0,1,,,, +1,5,38,1,normal,350,35,,,, +1,5,38,2,normal,50.8,5.08,,,, +1,5,38,3,normal,3.81,0.381,,,, +1,5,38,4,normal,173,17.3,,,, +1,5,38,5,normal,9.38,0.938,,,, +1,5,38,6,normal,33.1,3.31,,,, +1,5,38,7,normal,0.036,0.0036,,,, +1,6,53,1,normal,1.5,1,,,, +1,6,53,2,normal,2.5,1,,,, +1,7,54,1,exponential,1,,,,, +1,7,54,2,exponential,1,,,,, +1,7,54,3,exponential,1,,,,, +1,7,54,4,exponential,1,,,,, +1,7,54,5,exponential,1,,,,, +1,7,54,6,exponential,1,,,,, +1,7,54,7,exponential,1,,,,, +1,7,54,8,exponential,1,,,,, +1,7,54,9,exponential,1,,,,, +1,7,54,10,exponential,1,,,,, +1,7,54,11,exponential,1,,,,, +1,7,54,12,exponential,1,,,,, +1,7,54,13,exponential,1,,,,, +1,7,54,14,exponential,1,,,,, +1,7,54,15,exponential,1,,,,, +1,7,54,16,exponential,1,,,,, +1,7,54,17,exponential,1,,,,, +1,7,54,18,exponential,1,,,,, +1,7,54,19,exponential,1,,,,, +1,7,54,20,exponential,1,,,,, +1,8,63,1,normal,0,1,,,, +1,8,63,2,normal,0,1,,,, +1,8,63,3,normal,0,1,,,, +1,8,63,4,normal,0,1,,,, +1,8,63,5,normal,0,1,,,, +1,8,63,6,normal,0,1,,,, +1,8,63,7,normal,0,1,,,, +1,8,63,8,normal,0,1,,,, +1,8,63,9,normal,0,1,,,, +1,8,63,10,normal,0,1,,,, +1,8,63,11,normal,0,1,,,, +1,8,63,12,normal,0,1,,,, +1,8,63,13,normal,0,1,,,, +1,8,63,14,normal,0,1,,,, +1,8,63,15,normal,0,1,,,, +1,8,63,16,normal,0,1,,,, +1,8,63,17,normal,0,1,,,, +1,8,63,18,normal,0,1,,,, +1,8,63,19,normal,0,1,,,, +1,8,63,20,normal,0,1,,,, +1,8,63,21,normal,0,1,,,, +1,8,63,22,normal,0,1,,,, +1,8,63,23,normal,0,1,,,, +1,8,63,24,normal,0,1,,,, +1,8,63,25,normal,0,1,,,, +1,8,63,26,normal,0,1,,,, +1,8,63,27,normal,0,1,,,, +1,8,63,28,normal,0,1,,,, +1,8,63,29,normal,0,1,,,, +1,8,63,30,normal,0,1,,,, +1,8,63,31,normal,0,1,,,, +1,8,63,32,normal,0,1,,,, +1,8,63,33,normal,0,1,,,, +1,8,63,34,normal,0,1,,,, +1,8,63,35,normal,0,1,,,, +1,8,63,36,normal,0,1,,,, +1,8,63,37,normal,0,1,,,, +1,8,63,38,normal,0,1,,,, +1,8,63,39,normal,0,1,,,, +1,8,63,40,normal,0,1,,,, +1,8,63,41,normal,0,1,,,, +1,8,63,42,normal,0,1,,,, +1,8,63,43,normal,0,1,,,, +1,8,63,44,normal,0,1,,,, +1,8,63,45,normal,0,1,,,, +1,8,63,46,normal,0,1,,,, +1,8,63,47,normal,0,1,,,, +1,8,63,48,normal,0,1,,,, +1,8,63,49,normal,0,1,,,, +1,8,63,50,normal,0,1,,,, +1,8,63,51,normal,0,1,,,, +1,8,63,52,normal,0,1,,,, +1,8,63,53,normal,0,1,,,, +1,8,63,54,normal,0,1,,,, +1,8,63,55,normal,0,1,,,, +1,8,63,56,normal,0,1,,,, +1,8,63,57,normal,0,1,,,, +1,8,63,58,normal,0,1,,,, +1,8,63,59,normal,0,1,,,, +1,8,63,60,normal,0,1,,,, +1,8,63,61,normal,0,1,,,, +1,8,63,62,normal,0,1,,,, +1,8,63,63,normal,0,1,,,, +1,8,63,64,normal,0,1,,,, +1,8,63,65,normal,0,1,,,, +1,8,63,66,normal,0,1,,,, +1,8,63,67,normal,0,1,,,, +1,8,63,68,normal,0,1,,,, +1,8,63,69,normal,0,1,,,, +1,8,63,70,normal,0,1,,,, +1,8,63,71,normal,0,1,,,, +1,8,63,72,normal,0,1,,,, +1,8,63,73,normal,0,1,,,, +1,8,63,74,normal,0,1,,,, +1,8,63,75,normal,0,1,,,, +1,8,63,76,normal,0,1,,,, +1,8,63,77,normal,0,1,,,, +1,8,63,78,normal,0,1,,,, +1,8,63,79,normal,0,1,,,, +1,8,63,80,normal,0,1,,,, +1,8,63,81,normal,0,1,,,, +1,8,63,82,normal,0,1,,,, +1,8,63,83,normal,0,1,,,, +1,8,63,84,normal,0,1,,,, +1,8,63,85,normal,0,1,,,, +1,8,63,86,normal,0,1,,,, +1,8,63,87,normal,0,1,,,, +1,8,63,88,normal,0,1,,,, +1,8,63,89,normal,0,1,,,, +1,8,63,90,normal,0,1,,,, +1,8,63,91,normal,0,1,,,, +1,8,63,92,normal,0,1,,,, +1,8,63,93,normal,0,1,,,, +1,8,63,94,normal,0,1,,,, +1,8,63,95,normal,0,1,,,, +1,8,63,96,normal,0,1,,,, +1,8,63,97,normal,0,1,,,, +1,8,63,98,normal,0,1,,,, +1,8,63,99,normal,0,1,,,, +1,8,63,100,normal,0,1,,,, +1,9,75,1,normal,0,1,,,, +1,9,75,2,normal,0,1,,,, +1,10,107,1,normal,0,1,,,, +1,10,107,2,normal,0,1,,,, +1,10,107,3,normal,0,1,,,, +1,10,107,4,normal,0,1,,,, +1,10,107,5,normal,0,1,,,, +1,10,107,6,normal,0,1,,,, +1,10,107,7,normal,0,1,,,, +1,10,107,8,normal,0,1,,,, +1,10,107,9,normal,0,1,,,, +1,10,107,10,normal,0,1,,,, +1,11,111,1,normal,0,1,,,, +1,11,111,2,normal,0,1,,,, +1,12,201,1,normal,0,1,,,, +1,12,201,2,normal,0,1,,,, +1,12,201,3,normal,0,1,,,, +1,12,201,4,normal,0,1,,,, +1,12,201,5,normal,0,1,,,, +1,12,201,6,normal,0,1,,,, +1,12,201,7,normal,0,1,,,, +1,12,201,8,normal,0,1,,,, +1,12,201,9,normal,0,1,,,, +1,12,201,10,normal,0,1,,,, +1,12,201,11,normal,0,1,,,, +1,12,201,12,normal,0,1,,,, +1,12,201,13,normal,0,1,,,, +1,12,201,14,normal,0,1,,,, +1,12,201,15,normal,0,1,,,, +1,12,201,16,normal,0,1,,,, +1,12,201,17,normal,0,1,,,, +1,12,201,18,normal,0,1,,,, +1,12,201,19,normal,0,1,,,, +1,12,201,20,normal,0,1,,,, +1,12,201,21,normal,0,1,,,, +1,13,203,1,normal,0,1,,,, +1,13,203,2,normal,0,1,,,, +1,13,203,3,normal,0,1,,,, +1,13,203,4,normal,0,1,,,, +1,14,213,1,normal,0,1,,,, +1,14,213,2,normal,0,1,,,, +1,14,213,3,normal,0,1,,,, +1,14,213,4,normal,0,1,,,, +1,14,213,5,normal,0,1,,,, +1,14,213,6,normal,0,1,,,, +1,14,213,7,normal,0,1,,,, +1,14,213,8,normal,0,1,,,, +1,14,213,9,normal,0,1,,,, +1,14,213,10,normal,0,1,,,, +1,14,213,11,normal,0,1,,,, +1,14,213,12,normal,0,1,,,, +1,14,213,13,normal,0,1,,,, +1,15,300,1,normal,0,1,,,, +1,15,300,2,normal,0,1,,,, +1,15,300,3,normal,0,1,,,, +1,15,300,4,normal,0,1,,,, +1,15,300,5,normal,0,1,,,, +1,15,300,6,normal,0,1,,,, +1,15,300,7,normal,0,1,,,, +1,15,300,8,normal,0,1,,,, +1,15,300,9,normal,0,1,,,, +1,15,300,10,normal,0,1,,,, +1,15,300,11,normal,0,1,,,, +1,15,300,12,normal,0,1,,,, +1,15,300,13,normal,0,1,,,, +1,15,300,14,normal,0,1,,,, +1,16,301,1,lognormal,,,,,88,5 +1,16,301,2,lognormal,,,,,440,30 +1,16,301,3,lognormal,,,,,484,33 +1,16,301,4,lognormal,,,,,0.07,0.0063 +1,16,301,5,lognormal,,,,,590,41 +1,16,301,6,lognormal,,,,,649,45 +1,16,301,7,lognormal,,,,,0.07,0.0063 +1,16,301,8,normal,,,,,590,59 +1,16,301,9,gumbel_max,,,,,295,59 +1,16,301,10,lognormal,,,,,1.04,0.052 +1,16,301,11,lognormal,,,,,1,0.1 +1,16,301,12,lognormal,,,,,1,0.1 +2,1,25,1,normal,0,1,,,, +2,1,25,2,normal,0,1,,,, +2,2,33,1,normal,0,1,,,, +2,2,33,2,normal,0,1,,,, +2,2,33,3,normal,0,1,,,, +2,3,35,1,normal,0,1,,,, +2,3,35,2,normal,0,1,,,, +2,4,55,1,uniform,-1,1,,,, +2,4,55,2,uniform,-1,1,,,, +2,5,57,1,normal,0,1,,,, +2,5,57,2,normal,0,1,,,, +2,6,60,1,lognormal,,,,,2200,220 +2,6,60,2,lognormal,,,,,2100,210 +2,6,60,3,lognormal,,,,,2300,230 +2,6,60,4,lognormal,,,,,2000,200 +2,6,60,5,lognormal,,,,,1200,480 +2,7,77,1,normal,10,0.5,,,, +2,7,77,2,normal,0,1,,,, +2,7,77,3,normal,4,1,,,, +2,8,89,1,normal,0,1,,,, +2,8,89,2,normal,0,1,,,, +2,9,91,1,normal,0.07433,0.005,,,, +2,9,91,2,normal,0.1,0.01,,,, +2,9,91,3,normal,13,60,,,, +2,9,91,4,normal,4751,48,,,, +2,9,91,5,normal,-684,11,,,, +2,10,110,1,normal,0,1,,,, +2,10,110,2,normal,0,1,,,, +2,11,202,1,normal,0,1,,,, +2,11,202,2,normal,0,1,,,, +2,11,202,3,normal,0,1,,,, +2,11,202,4,normal,0,1,,,, +2,11,202,5,normal,0,1,,,, +2,11,202,6,normal,0,1,,,, +2,11,202,7,normal,0,1,,,, +2,11,202,8,normal,0,1,,,, +2,11,202,9,normal,0,1,,,, +2,11,202,10,normal,0,1,,,, +2,11,202,11,normal,0,1,,,, +2,11,202,12,normal,0,1,,,, +2,11,202,13,normal,0,1,,,, +2,11,202,14,normal,0,1,,,, +2,11,202,15,normal,0,1,,,, +2,11,202,16,normal,0,1,,,, +2,11,202,17,normal,0,1,,,, +2,11,202,18,normal,0,1,,,, +2,11,202,19,normal,0,1,,,, +2,11,202,20,normal,0,1,,,, +2,11,202,21,normal,0,1,,,, +2,11,202,22,normal,0,1,,,, +2,11,202,23,normal,0,1,,,, +2,11,202,24,normal,0,1,,,, +2,11,202,25,normal,0,1,,,, +2,11,202,26,normal,0,1,,,, +2,11,202,27,normal,0,1,,,, +2,11,202,28,normal,0,1,,,, +2,11,202,29,normal,0,1,,,, +2,11,202,30,normal,0,1,,,, +2,11,202,31,normal,0,1,,,, +2,11,202,32,normal,0,1,,,, +2,11,202,33,normal,0,1,,,, +2,11,202,34,normal,0,1,,,, +2,11,202,35,normal,0,1,,,, +2,11,202,36,normal,0,1,,,, +2,11,202,37,normal,0,1,,,, +2,11,202,38,normal,0,1,,,, +2,11,202,39,normal,0,1,,,, +2,11,202,40,normal,0,1,,,, +2,11,202,41,normal,0,1,,,, +2,11,202,42,normal,0,1,,,, +2,11,202,43,normal,0,1,,,, +2,11,202,44,normal,0,1,,,, +2,11,202,45,normal,0,1,,,, +2,11,202,46,normal,0,1,,,, +2,11,202,47,normal,0,1,,,, +2,11,202,48,normal,0,1,,,, +2,11,202,49,normal,0,1,,,, +2,11,202,50,normal,0,1,,,, +2,11,202,51,normal,0,1,,,, +2,11,202,52,normal,0,1,,,, +2,11,202,53,normal,0,1,,,, +2,11,202,54,normal,0,1,,,, +2,11,202,55,normal,0,1,,,, +2,11,202,56,normal,0,1,,,, +2,11,202,57,normal,0,1,,,, +2,11,202,58,normal,0,1,,,, +2,11,202,59,normal,0,1,,,, +2,11,202,60,normal,0,1,,,, +2,11,202,61,normal,0,1,,,, +2,11,202,62,normal,0,1,,,, +2,11,202,63,normal,0,1,,,, +2,11,202,64,normal,0,1,,,, +2,11,202,65,normal,0,1,,,, +2,11,202,66,normal,0,1,,,, +2,11,202,67,normal,0,1,,,, +2,11,202,68,normal,0,1,,,, +2,11,202,69,normal,0,1,,,, +2,11,202,70,normal,0,1,,,, +2,11,202,71,normal,0,1,,,, +2,11,202,72,normal,0,1,,,, +2,11,202,73,normal,0,1,,,, +2,11,202,74,normal,0,1,,,, +2,11,202,75,normal,0,1,,,, +2,11,202,76,normal,0,1,,,, +2,11,202,77,normal,0,1,,,, +2,11,202,78,normal,0,1,,,, +2,11,202,79,normal,0,1,,,, +2,11,202,80,normal,0,1,,,, +2,11,202,81,normal,0,1,,,, +2,11,202,82,normal,0,1,,,, +2,11,202,83,normal,0,1,,,, +2,11,202,84,normal,0,1,,,, +2,11,202,85,normal,0,1,,,, +2,11,202,86,normal,0,1,,,, +2,11,202,87,normal,0,1,,,, +2,11,202,88,normal,0,1,,,, +2,11,202,89,normal,0,1,,,, +2,11,202,90,normal,0,1,,,, +2,11,202,91,normal,0,1,,,, +2,11,202,92,normal,0,1,,,, +2,11,202,93,normal,0,1,,,, +2,11,202,94,normal,0,1,,,, +2,11,202,95,normal,0,1,,,, +2,11,202,96,normal,0,1,,,, +2,11,202,97,normal,0,1,,,, +2,11,202,98,normal,0,1,,,, +2,11,202,99,normal,0,1,,,, +2,11,202,100,normal,0,1,,,, +2,11,202,101,normal,0,1,,,, +2,11,202,102,normal,0,1,,,, +2,11,202,103,normal,0,1,,,, +2,11,202,104,normal,0,1,,,, +2,11,202,105,normal,0,1,,,, +2,11,202,106,normal,0,1,,,, +2,11,202,107,normal,0,1,,,, +2,11,202,108,normal,0,1,,,, +2,11,202,109,normal,0,1,,,, +2,11,202,110,normal,0,1,,,, +2,11,202,111,normal,0,1,,,, +2,11,202,112,normal,0,1,,,, +2,11,202,113,normal,0,1,,,, +2,11,202,114,normal,0,1,,,, +2,11,202,115,normal,0,1,,,, +2,11,202,116,normal,0,1,,,, +2,11,202,117,normal,0,1,,,, +2,11,202,118,normal,0,1,,,, +2,11,202,119,normal,0,1,,,, +2,11,202,120,normal,0,1,,,, +2,11,202,121,normal,0,1,,,, +2,11,202,122,normal,0,1,,,, +2,11,202,123,normal,0,1,,,, +2,11,202,124,normal,0,1,,,, +2,11,202,125,normal,0,1,,,, +2,11,202,126,normal,0,1,,,, +2,11,202,127,normal,0,1,,,, +2,11,202,128,normal,0,1,,,, +2,11,202,129,normal,0,1,,,, +2,11,202,130,normal,0,1,,,, +2,11,202,131,normal,0,1,,,, +2,11,202,132,normal,0,1,,,, +2,11,202,133,normal,0,1,,,, +2,11,202,134,normal,0,1,,,, +2,11,202,135,normal,0,1,,,, +2,11,202,136,normal,0,1,,,, +2,11,202,137,normal,0,1,,,, +2,11,202,138,normal,0,1,,,, +2,11,202,139,normal,0,1,,,, +2,11,202,140,normal,0,1,,,, +2,11,202,141,normal,0,1,,,, +2,11,202,142,normal,0,1,,,, +2,11,202,143,normal,0,1,,,, +2,11,202,144,normal,0,1,,,, +2,11,202,145,normal,0,1,,,, +2,11,202,146,normal,0,1,,,, +2,11,202,147,normal,0,1,,,, +2,11,202,148,normal,0,1,,,, +2,11,202,149,normal,0,1,,,, +2,11,202,150,normal,0,1,,,, +2,11,202,151,normal,0,1,,,, +2,11,202,152,normal,0,1,,,, +2,11,202,153,normal,0,1,,,, +2,11,202,154,normal,0,1,,,, +2,11,202,155,normal,0,1,,,, +2,11,202,156,normal,0,1,,,, +2,11,202,157,normal,0,1,,,, +2,11,202,158,normal,0,1,,,, +2,11,202,159,normal,0,1,,,, +2,11,202,160,normal,0,1,,,, +2,11,202,161,normal,0,1,,,, +2,11,202,162,normal,0,1,,,, +2,11,202,163,normal,0,1,,,, +2,11,202,164,normal,0,1,,,, +2,11,202,165,normal,0,1,,,, +2,11,202,166,normal,0,1,,,, +2,11,202,167,normal,0,1,,,, +2,11,202,168,normal,0,1,,,, +2,11,202,169,normal,0,1,,,, +2,11,202,170,normal,0,1,,,, +2,11,202,171,normal,0,1,,,, +2,11,202,172,normal,0,1,,,, +2,11,202,173,normal,0,1,,,, +2,11,202,174,normal,0,1,,,, +2,11,202,175,normal,0,1,,,, +2,11,202,176,normal,0,1,,,, +2,11,202,177,normal,0,1,,,, +2,11,202,178,normal,0,1,,,, +2,11,202,179,normal,0,1,,,, +2,11,202,180,normal,0,1,,,, +2,11,202,181,normal,0,1,,,, +2,11,202,182,normal,0,1,,,, +2,11,202,183,normal,0,1,,,, +2,11,202,184,normal,0,1,,,, +2,11,202,185,normal,0,1,,,, +2,11,202,186,normal,0,1,,,, +2,11,202,187,normal,0,1,,,, +2,11,202,188,normal,0,1,,,, +2,11,202,189,normal,0,1,,,, +2,11,202,190,normal,0,1,,,, +2,11,202,191,normal,0,1,,,, +2,11,202,192,normal,0,1,,,, +2,11,202,193,normal,0,1,,,, +2,11,202,194,normal,0,1,,,, +2,11,202,195,normal,0,1,,,, +2,11,202,196,normal,0,1,,,, +2,11,202,197,normal,0,1,,,, +2,11,202,198,normal,0,1,,,, +2,11,202,199,normal,0,1,,,, +2,11,202,200,normal,0,1,,,, +2,11,202,201,normal,0,1,,,, +2,11,202,202,normal,0,1,,,, +2,11,202,203,normal,0,1,,,, +2,11,202,204,normal,0,1,,,, +2,11,202,205,normal,0,1,,,, +2,11,202,206,normal,0,1,,,, +2,11,202,207,normal,0,1,,,, +2,11,202,208,normal,0,1,,,, +2,11,202,209,normal,0,1,,,, +2,11,202,210,normal,0,1,,,, +2,11,202,211,normal,0,1,,,, +2,11,202,212,normal,0,1,,,, +2,11,202,213,normal,0,1,,,, +2,11,202,214,normal,0,1,,,, +2,11,202,215,normal,0,1,,,, +2,11,202,216,normal,0,1,,,, +2,11,202,217,normal,0,1,,,, +2,11,202,218,normal,0,1,,,, +2,11,202,219,normal,0,1,,,, +2,11,202,220,normal,0,1,,,, +2,11,202,221,normal,0,1,,,, +2,11,202,222,normal,0,1,,,, +2,11,202,223,normal,0,1,,,, +2,11,202,224,normal,0,1,,,, +2,11,202,225,normal,0,1,,,, diff --git a/otbenchmark/distributions/probabilistic_models_up.csv b/otbenchmark/distributions/probabilistic_models_up.csv new file mode 100644 index 0000000..81c52a5 --- /dev/null +++ b/otbenchmark/distributions/probabilistic_models_up.csv @@ -0,0 +1,480 @@ +set_id,problem_id,reliability_problem_id,random_variable,distribution_type,theta_1,theta_2,theta_3,theta_4,mean,std +-1,1,8,1,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,2,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,3,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,4,lognormal,4.782516577355462,0.0997513451195927,,,120.0,12.0 +-1,1,8,5,lognormal,3.8924126488515056,0.1980422004353651,,,50.0,10.0 +-1,1,8,6,lognormal,3.669269097537296,0.1980422004353651,,,40.0,8.0 +-1,2,22,1,normal,0.0,1.0,,,0.0,1.0 +-1,2,22,2,normal,0.0,1.0,,,0.0,1.0 +1,1,14,1,uniform,70.0,80.0,,,75.0,2.886751345948129 +1,1,14,2,normal,39.0,0.1,,,39.0,0.1 +1,1,14,3,gumbel_max,1342.48,272.89,,,1500.0,350.0 +1,1,14,4,normal,400.0,0.1,,,400.0,0.1 +1,1,14,5,normal,250000.0,35000.0,,,250000.0,35000.0 +1,2,24,1,normal,10.0,3.0,,,10.0,3.0 +1,2,24,2,normal,10.0,3.0,,,10.0,3.0 +1,3,28,1,normal,78064.4,11709.7,,,78064.4,11709.7 +1,3,28,2,normal,0.0104,0.00156,,,0.0104,0.00156 +1,4,31,1,normal,0.0,1.0,,,0.0,1.0 +1,4,31,2,normal,0.0,1.0,,,0.0,1.0 +1,5,38,1,normal,350.0,35.0,,,350.0,35.0 +1,5,38,2,normal,50.8,5.08,,,50.8,5.08 +1,5,38,3,normal,3.81,0.381,,,3.81,0.381 +1,5,38,4,normal,173.0,17.3,,,173.0,17.3 +1,5,38,5,normal,9.38,0.938,,,9.38,0.938 +1,5,38,6,normal,33.1,3.31,,,33.1,3.31 +1,5,38,7,normal,0.036000000000000004,0.0036,,,0.036000000000000004,0.0036 +1,6,53,1,normal,1.5,1.0,,,1.5,1.0 +1,6,53,2,normal,2.5,1.0,,,2.5,1.0 +1,7,54,1,exponential,1.0,,,,1.0,1.0 +1,7,54,2,exponential,1.0,,,,1.0,1.0 +1,7,54,3,exponential,1.0,,,,1.0,1.0 +1,7,54,4,exponential,1.0,,,,1.0,1.0 +1,7,54,5,exponential,1.0,,,,1.0,1.0 +1,7,54,6,exponential,1.0,,,,1.0,1.0 +1,7,54,7,exponential,1.0,,,,1.0,1.0 +1,7,54,8,exponential,1.0,,,,1.0,1.0 +1,7,54,9,exponential,1.0,,,,1.0,1.0 +1,7,54,10,exponential,1.0,,,,1.0,1.0 +1,7,54,11,exponential,1.0,,,,1.0,1.0 +1,7,54,12,exponential,1.0,,,,1.0,1.0 +1,7,54,13,exponential,1.0,,,,1.0,1.0 +1,7,54,14,exponential,1.0,,,,1.0,1.0 +1,7,54,15,exponential,1.0,,,,1.0,1.0 +1,7,54,16,exponential,1.0,,,,1.0,1.0 +1,7,54,17,exponential,1.0,,,,1.0,1.0 +1,7,54,18,exponential,1.0,,,,1.0,1.0 +1,7,54,19,exponential,1.0,,,,1.0,1.0 +1,7,54,20,exponential,1.0,,,,1.0,1.0 +1,8,63,1,normal,0.0,1.0,,,0.0,1.0 +1,8,63,2,normal,0.0,1.0,,,0.0,1.0 +1,8,63,3,normal,0.0,1.0,,,0.0,1.0 +1,8,63,4,normal,0.0,1.0,,,0.0,1.0 +1,8,63,5,normal,0.0,1.0,,,0.0,1.0 +1,8,63,6,normal,0.0,1.0,,,0.0,1.0 +1,8,63,7,normal,0.0,1.0,,,0.0,1.0 +1,8,63,8,normal,0.0,1.0,,,0.0,1.0 +1,8,63,9,normal,0.0,1.0,,,0.0,1.0 +1,8,63,10,normal,0.0,1.0,,,0.0,1.0 +1,8,63,11,normal,0.0,1.0,,,0.0,1.0 +1,8,63,12,normal,0.0,1.0,,,0.0,1.0 +1,8,63,13,normal,0.0,1.0,,,0.0,1.0 +1,8,63,14,normal,0.0,1.0,,,0.0,1.0 +1,8,63,15,normal,0.0,1.0,,,0.0,1.0 +1,8,63,16,normal,0.0,1.0,,,0.0,1.0 +1,8,63,17,normal,0.0,1.0,,,0.0,1.0 +1,8,63,18,normal,0.0,1.0,,,0.0,1.0 +1,8,63,19,normal,0.0,1.0,,,0.0,1.0 +1,8,63,20,normal,0.0,1.0,,,0.0,1.0 +1,8,63,21,normal,0.0,1.0,,,0.0,1.0 +1,8,63,22,normal,0.0,1.0,,,0.0,1.0 +1,8,63,23,normal,0.0,1.0,,,0.0,1.0 +1,8,63,24,normal,0.0,1.0,,,0.0,1.0 +1,8,63,25,normal,0.0,1.0,,,0.0,1.0 +1,8,63,26,normal,0.0,1.0,,,0.0,1.0 +1,8,63,27,normal,0.0,1.0,,,0.0,1.0 +1,8,63,28,normal,0.0,1.0,,,0.0,1.0 +1,8,63,29,normal,0.0,1.0,,,0.0,1.0 +1,8,63,30,normal,0.0,1.0,,,0.0,1.0 +1,8,63,31,normal,0.0,1.0,,,0.0,1.0 +1,8,63,32,normal,0.0,1.0,,,0.0,1.0 +1,8,63,33,normal,0.0,1.0,,,0.0,1.0 +1,8,63,34,normal,0.0,1.0,,,0.0,1.0 +1,8,63,35,normal,0.0,1.0,,,0.0,1.0 +1,8,63,36,normal,0.0,1.0,,,0.0,1.0 +1,8,63,37,normal,0.0,1.0,,,0.0,1.0 +1,8,63,38,normal,0.0,1.0,,,0.0,1.0 +1,8,63,39,normal,0.0,1.0,,,0.0,1.0 +1,8,63,40,normal,0.0,1.0,,,0.0,1.0 +1,8,63,41,normal,0.0,1.0,,,0.0,1.0 +1,8,63,42,normal,0.0,1.0,,,0.0,1.0 +1,8,63,43,normal,0.0,1.0,,,0.0,1.0 +1,8,63,44,normal,0.0,1.0,,,0.0,1.0 +1,8,63,45,normal,0.0,1.0,,,0.0,1.0 +1,8,63,46,normal,0.0,1.0,,,0.0,1.0 +1,8,63,47,normal,0.0,1.0,,,0.0,1.0 +1,8,63,48,normal,0.0,1.0,,,0.0,1.0 +1,8,63,49,normal,0.0,1.0,,,0.0,1.0 +1,8,63,50,normal,0.0,1.0,,,0.0,1.0 +1,8,63,51,normal,0.0,1.0,,,0.0,1.0 +1,8,63,52,normal,0.0,1.0,,,0.0,1.0 +1,8,63,53,normal,0.0,1.0,,,0.0,1.0 +1,8,63,54,normal,0.0,1.0,,,0.0,1.0 +1,8,63,55,normal,0.0,1.0,,,0.0,1.0 +1,8,63,56,normal,0.0,1.0,,,0.0,1.0 +1,8,63,57,normal,0.0,1.0,,,0.0,1.0 +1,8,63,58,normal,0.0,1.0,,,0.0,1.0 +1,8,63,59,normal,0.0,1.0,,,0.0,1.0 +1,8,63,60,normal,0.0,1.0,,,0.0,1.0 +1,8,63,61,normal,0.0,1.0,,,0.0,1.0 +1,8,63,62,normal,0.0,1.0,,,0.0,1.0 +1,8,63,63,normal,0.0,1.0,,,0.0,1.0 +1,8,63,64,normal,0.0,1.0,,,0.0,1.0 +1,8,63,65,normal,0.0,1.0,,,0.0,1.0 +1,8,63,66,normal,0.0,1.0,,,0.0,1.0 +1,8,63,67,normal,0.0,1.0,,,0.0,1.0 +1,8,63,68,normal,0.0,1.0,,,0.0,1.0 +1,8,63,69,normal,0.0,1.0,,,0.0,1.0 +1,8,63,70,normal,0.0,1.0,,,0.0,1.0 +1,8,63,71,normal,0.0,1.0,,,0.0,1.0 +1,8,63,72,normal,0.0,1.0,,,0.0,1.0 +1,8,63,73,normal,0.0,1.0,,,0.0,1.0 +1,8,63,74,normal,0.0,1.0,,,0.0,1.0 +1,8,63,75,normal,0.0,1.0,,,0.0,1.0 +1,8,63,76,normal,0.0,1.0,,,0.0,1.0 +1,8,63,77,normal,0.0,1.0,,,0.0,1.0 +1,8,63,78,normal,0.0,1.0,,,0.0,1.0 +1,8,63,79,normal,0.0,1.0,,,0.0,1.0 +1,8,63,80,normal,0.0,1.0,,,0.0,1.0 +1,8,63,81,normal,0.0,1.0,,,0.0,1.0 +1,8,63,82,normal,0.0,1.0,,,0.0,1.0 +1,8,63,83,normal,0.0,1.0,,,0.0,1.0 +1,8,63,84,normal,0.0,1.0,,,0.0,1.0 +1,8,63,85,normal,0.0,1.0,,,0.0,1.0 +1,8,63,86,normal,0.0,1.0,,,0.0,1.0 +1,8,63,87,normal,0.0,1.0,,,0.0,1.0 +1,8,63,88,normal,0.0,1.0,,,0.0,1.0 +1,8,63,89,normal,0.0,1.0,,,0.0,1.0 +1,8,63,90,normal,0.0,1.0,,,0.0,1.0 +1,8,63,91,normal,0.0,1.0,,,0.0,1.0 +1,8,63,92,normal,0.0,1.0,,,0.0,1.0 +1,8,63,93,normal,0.0,1.0,,,0.0,1.0 +1,8,63,94,normal,0.0,1.0,,,0.0,1.0 +1,8,63,95,normal,0.0,1.0,,,0.0,1.0 +1,8,63,96,normal,0.0,1.0,,,0.0,1.0 +1,8,63,97,normal,0.0,1.0,,,0.0,1.0 +1,8,63,98,normal,0.0,1.0,,,0.0,1.0 +1,8,63,99,normal,0.0,1.0,,,0.0,1.0 +1,8,63,100,normal,0.0,1.0,,,0.0,1.0 +1,9,75,1,normal,0.0,1.0,,,0.0,1.0 +1,9,75,2,normal,0.0,1.0,,,0.0,1.0 +1,10,107,1,normal,0.0,1.0,,,0.0,1.0 +1,10,107,2,normal,0.0,1.0,,,0.0,1.0 +1,10,107,3,normal,0.0,1.0,,,0.0,1.0 +1,10,107,4,normal,0.0,1.0,,,0.0,1.0 +1,10,107,5,normal,0.0,1.0,,,0.0,1.0 +1,10,107,6,normal,0.0,1.0,,,0.0,1.0 +1,10,107,7,normal,0.0,1.0,,,0.0,1.0 +1,10,107,8,normal,0.0,1.0,,,0.0,1.0 +1,10,107,9,normal,0.0,1.0,,,0.0,1.0 +1,10,107,10,normal,0.0,1.0,,,0.0,1.0 +1,11,111,1,normal,0.0,1.0,,,0.0,1.0 +1,11,111,2,normal,0.0,1.0,,,0.0,1.0 +1,12,201,1,normal,0.0,1.0,,,0.0,1.0 +1,12,201,2,normal,0.0,1.0,,,0.0,1.0 +1,12,201,3,normal,0.0,1.0,,,0.0,1.0 +1,12,201,4,normal,0.0,1.0,,,0.0,1.0 +1,12,201,5,normal,0.0,1.0,,,0.0,1.0 +1,12,201,6,normal,0.0,1.0,,,0.0,1.0 +1,12,201,7,normal,0.0,1.0,,,0.0,1.0 +1,12,201,8,normal,0.0,1.0,,,0.0,1.0 +1,12,201,9,normal,0.0,1.0,,,0.0,1.0 +1,12,201,10,normal,0.0,1.0,,,0.0,1.0 +1,12,201,11,normal,0.0,1.0,,,0.0,1.0 +1,12,201,12,normal,0.0,1.0,,,0.0,1.0 +1,12,201,13,normal,0.0,1.0,,,0.0,1.0 +1,12,201,14,normal,0.0,1.0,,,0.0,1.0 +1,12,201,15,normal,0.0,1.0,,,0.0,1.0 +1,12,201,16,normal,0.0,1.0,,,0.0,1.0 +1,12,201,17,normal,0.0,1.0,,,0.0,1.0 +1,12,201,18,normal,0.0,1.0,,,0.0,1.0 +1,12,201,19,normal,0.0,1.0,,,0.0,1.0 +1,12,201,20,normal,0.0,1.0,,,0.0,1.0 +1,12,201,21,normal,0.0,1.0,,,0.0,1.0 +1,13,203,1,normal,0.0,1.0,,,0.0,1.0 +1,13,203,2,normal,0.0,1.0,,,0.0,1.0 +1,13,203,3,normal,0.0,1.0,,,0.0,1.0 +1,13,203,4,normal,0.0,1.0,,,0.0,1.0 +1,14,213,1,normal,0.0,1.0,,,0.0,1.0 +1,14,213,2,normal,0.0,1.0,,,0.0,1.0 +1,14,213,3,normal,0.0,1.0,,,0.0,1.0 +1,14,213,4,normal,0.0,1.0,,,0.0,1.0 +1,14,213,5,normal,0.0,1.0,,,0.0,1.0 +1,14,213,6,normal,0.0,1.0,,,0.0,1.0 +1,14,213,7,normal,0.0,1.0,,,0.0,1.0 +1,14,213,8,normal,0.0,1.0,,,0.0,1.0 +1,14,213,9,normal,0.0,1.0,,,0.0,1.0 +1,14,213,10,normal,0.0,1.0,,,0.0,1.0 +1,14,213,11,normal,0.0,1.0,,,0.0,1.0 +1,14,213,12,normal,0.0,1.0,,,0.0,1.0 +1,14,213,13,normal,0.0,1.0,,,0.0,1.0 +1,15,300,1,normal,0.0,1.0,,,0.0,1.0 +1,15,300,2,normal,0.0,1.0,,,0.0,1.0 +1,15,300,3,normal,0.0,1.0,,,0.0,1.0 +1,15,300,4,normal,0.0,1.0,,,0.0,1.0 +1,15,300,5,normal,0.0,1.0,,,0.0,1.0 +1,15,300,6,normal,0.0,1.0,,,0.0,1.0 +1,15,300,7,normal,0.0,1.0,,,0.0,1.0 +1,15,300,8,normal,0.0,1.0,,,0.0,1.0 +1,15,300,9,normal,0.0,1.0,,,0.0,1.0 +1,15,300,10,normal,0.0,1.0,,,0.0,1.0 +1,15,300,11,normal,0.0,1.0,,,0.0,1.0 +1,15,300,12,normal,0.0,1.0,,,0.0,1.0 +1,15,300,13,normal,0.0,1.0,,,0.0,1.0 +1,15,300,14,normal,0.0,1.0,,,0.0,1.0 +1,16,301,1,lognormal,4.475725261481203,0.056772405215982924,,,88.0,5.0 +1,16,301,2,lognormal,6.084455732804295,0.06810277685986316,,,440.0,30.0 +1,16,301,3,lognormal,6.1797659126086195,0.06810277685986316,,,484.0,33.0 +1,16,301,4,lognormal,-2.6632937224716575,0.08981854528859166,,,0.07,0.0063 +1,16,301,5,lognormal,6.37771381213003,0.06940784926411606,,,590.0,41.0 +1,16,301,6,lognormal,6.4730346362521605,0.06925432047070759,,,649.0,45.0 +1,16,301,7,lognormal,-2.6632937224716575,0.08981854528859166,,,0.07,0.0063 +1,16,301,8,normal,590.0,59.0,,,590.0,59.0 +1,16,301,9,gumbel_max,268.446860754804,46.002111272786884,,,295.0,59.0 +1,16,301,10,lognormal,0.037972273053987586,0.049968792246632754,,,1.04,0.052000000000000005 +1,16,301,11,lognormal,-0.0049751654265839124,0.0997513451195927,,,1.0,0.1 +1,16,301,12,lognormal,-0.0049751654265839124,0.0997513451195927,,,1.0,0.1 +2,1,25,1,normal,0.0,1.0,,,0.0,1.0 +2,1,25,2,normal,0.0,1.0,,,0.0,1.0 +2,2,33,1,normal,0.0,1.0,,,0.0,1.0 +2,2,33,2,normal,0.0,1.0,,,0.0,1.0 +2,2,33,3,normal,0.0,1.0,,,0.0,1.0 +2,3,35,1,normal,0.0,1.0,,,0.0,1.0 +2,3,35,2,normal,0.0,1.0,,,0.0,1.0 +2,4,55,1,uniform,-1.0,1.0,,,0.0,0.5773502691896257 +2,4,55,2,uniform,-1.0,1.0,,,0.0,0.5773502691896257 +2,5,57,1,normal,0.0,1.0,,,0.0,1.0 +2,5,57,2,normal,0.0,1.0,,,0.0,1.0 +2,6,60,1,lognormal,7.6912374739198235,0.0997513451195927,,,2200.0,220.0 +2,6,60,2,lognormal,7.64471745828493,0.0997513451195927,,,2100.0,210.0 +2,6,60,3,lognormal,7.735689236490657,0.0997513451195927,,,2300.0,230.0 +2,6,60,4,lognormal,7.595927294115499,0.0997513451195927,,,2000.0,200.0 +2,6,60,5,lognormal,7.015866833216955,0.38525317015992644,,,1200.0,480.0 +2,7,77,1,normal,10.0,0.5,,,10.0,0.5 +2,7,77,2,normal,0.0,1.0,,,0.0,1.0 +2,7,77,3,normal,4.0,1.0,,,4.0,1.0 +2,8,89,1,normal,0.0,1.0,,,0.0,1.0 +2,8,89,2,normal,0.0,1.0,,,0.0,1.0 +2,9,91,1,normal,0.07433,0.005,,,0.07433,0.005 +2,9,91,2,normal,0.1,0.01,,,0.1,0.01 +2,9,91,3,normal,13.0,60.0,,,13.0,60.0 +2,9,91,4,normal,4751.0,48.0,,,4751.0,48.0 +2,9,91,5,normal,-684.0,11.0,,,-684.0,11.0 +2,10,110,1,normal,0.0,1.0,,,0.0,1.0 +2,10,110,2,normal,0.0,1.0,,,0.0,1.0 +2,11,202,1,normal,0.0,1.0,,,0.0,1.0 +2,11,202,2,normal,0.0,1.0,,,0.0,1.0 +2,11,202,3,normal,0.0,1.0,,,0.0,1.0 +2,11,202,4,normal,0.0,1.0,,,0.0,1.0 +2,11,202,5,normal,0.0,1.0,,,0.0,1.0 +2,11,202,6,normal,0.0,1.0,,,0.0,1.0 +2,11,202,7,normal,0.0,1.0,,,0.0,1.0 +2,11,202,8,normal,0.0,1.0,,,0.0,1.0 +2,11,202,9,normal,0.0,1.0,,,0.0,1.0 +2,11,202,10,normal,0.0,1.0,,,0.0,1.0 +2,11,202,11,normal,0.0,1.0,,,0.0,1.0 +2,11,202,12,normal,0.0,1.0,,,0.0,1.0 +2,11,202,13,normal,0.0,1.0,,,0.0,1.0 +2,11,202,14,normal,0.0,1.0,,,0.0,1.0 +2,11,202,15,normal,0.0,1.0,,,0.0,1.0 +2,11,202,16,normal,0.0,1.0,,,0.0,1.0 +2,11,202,17,normal,0.0,1.0,,,0.0,1.0 +2,11,202,18,normal,0.0,1.0,,,0.0,1.0 +2,11,202,19,normal,0.0,1.0,,,0.0,1.0 +2,11,202,20,normal,0.0,1.0,,,0.0,1.0 +2,11,202,21,normal,0.0,1.0,,,0.0,1.0 +2,11,202,22,normal,0.0,1.0,,,0.0,1.0 +2,11,202,23,normal,0.0,1.0,,,0.0,1.0 +2,11,202,24,normal,0.0,1.0,,,0.0,1.0 +2,11,202,25,normal,0.0,1.0,,,0.0,1.0 +2,11,202,26,normal,0.0,1.0,,,0.0,1.0 +2,11,202,27,normal,0.0,1.0,,,0.0,1.0 +2,11,202,28,normal,0.0,1.0,,,0.0,1.0 +2,11,202,29,normal,0.0,1.0,,,0.0,1.0 +2,11,202,30,normal,0.0,1.0,,,0.0,1.0 +2,11,202,31,normal,0.0,1.0,,,0.0,1.0 +2,11,202,32,normal,0.0,1.0,,,0.0,1.0 +2,11,202,33,normal,0.0,1.0,,,0.0,1.0 +2,11,202,34,normal,0.0,1.0,,,0.0,1.0 +2,11,202,35,normal,0.0,1.0,,,0.0,1.0 +2,11,202,36,normal,0.0,1.0,,,0.0,1.0 +2,11,202,37,normal,0.0,1.0,,,0.0,1.0 +2,11,202,38,normal,0.0,1.0,,,0.0,1.0 +2,11,202,39,normal,0.0,1.0,,,0.0,1.0 +2,11,202,40,normal,0.0,1.0,,,0.0,1.0 +2,11,202,41,normal,0.0,1.0,,,0.0,1.0 +2,11,202,42,normal,0.0,1.0,,,0.0,1.0 +2,11,202,43,normal,0.0,1.0,,,0.0,1.0 +2,11,202,44,normal,0.0,1.0,,,0.0,1.0 +2,11,202,45,normal,0.0,1.0,,,0.0,1.0 +2,11,202,46,normal,0.0,1.0,,,0.0,1.0 +2,11,202,47,normal,0.0,1.0,,,0.0,1.0 +2,11,202,48,normal,0.0,1.0,,,0.0,1.0 +2,11,202,49,normal,0.0,1.0,,,0.0,1.0 +2,11,202,50,normal,0.0,1.0,,,0.0,1.0 +2,11,202,51,normal,0.0,1.0,,,0.0,1.0 +2,11,202,52,normal,0.0,1.0,,,0.0,1.0 +2,11,202,53,normal,0.0,1.0,,,0.0,1.0 +2,11,202,54,normal,0.0,1.0,,,0.0,1.0 +2,11,202,55,normal,0.0,1.0,,,0.0,1.0 +2,11,202,56,normal,0.0,1.0,,,0.0,1.0 +2,11,202,57,normal,0.0,1.0,,,0.0,1.0 +2,11,202,58,normal,0.0,1.0,,,0.0,1.0 +2,11,202,59,normal,0.0,1.0,,,0.0,1.0 +2,11,202,60,normal,0.0,1.0,,,0.0,1.0 +2,11,202,61,normal,0.0,1.0,,,0.0,1.0 +2,11,202,62,normal,0.0,1.0,,,0.0,1.0 +2,11,202,63,normal,0.0,1.0,,,0.0,1.0 +2,11,202,64,normal,0.0,1.0,,,0.0,1.0 +2,11,202,65,normal,0.0,1.0,,,0.0,1.0 +2,11,202,66,normal,0.0,1.0,,,0.0,1.0 +2,11,202,67,normal,0.0,1.0,,,0.0,1.0 +2,11,202,68,normal,0.0,1.0,,,0.0,1.0 +2,11,202,69,normal,0.0,1.0,,,0.0,1.0 +2,11,202,70,normal,0.0,1.0,,,0.0,1.0 +2,11,202,71,normal,0.0,1.0,,,0.0,1.0 +2,11,202,72,normal,0.0,1.0,,,0.0,1.0 +2,11,202,73,normal,0.0,1.0,,,0.0,1.0 +2,11,202,74,normal,0.0,1.0,,,0.0,1.0 +2,11,202,75,normal,0.0,1.0,,,0.0,1.0 +2,11,202,76,normal,0.0,1.0,,,0.0,1.0 +2,11,202,77,normal,0.0,1.0,,,0.0,1.0 +2,11,202,78,normal,0.0,1.0,,,0.0,1.0 +2,11,202,79,normal,0.0,1.0,,,0.0,1.0 +2,11,202,80,normal,0.0,1.0,,,0.0,1.0 +2,11,202,81,normal,0.0,1.0,,,0.0,1.0 +2,11,202,82,normal,0.0,1.0,,,0.0,1.0 +2,11,202,83,normal,0.0,1.0,,,0.0,1.0 +2,11,202,84,normal,0.0,1.0,,,0.0,1.0 +2,11,202,85,normal,0.0,1.0,,,0.0,1.0 +2,11,202,86,normal,0.0,1.0,,,0.0,1.0 +2,11,202,87,normal,0.0,1.0,,,0.0,1.0 +2,11,202,88,normal,0.0,1.0,,,0.0,1.0 +2,11,202,89,normal,0.0,1.0,,,0.0,1.0 +2,11,202,90,normal,0.0,1.0,,,0.0,1.0 +2,11,202,91,normal,0.0,1.0,,,0.0,1.0 +2,11,202,92,normal,0.0,1.0,,,0.0,1.0 +2,11,202,93,normal,0.0,1.0,,,0.0,1.0 +2,11,202,94,normal,0.0,1.0,,,0.0,1.0 +2,11,202,95,normal,0.0,1.0,,,0.0,1.0 +2,11,202,96,normal,0.0,1.0,,,0.0,1.0 +2,11,202,97,normal,0.0,1.0,,,0.0,1.0 +2,11,202,98,normal,0.0,1.0,,,0.0,1.0 +2,11,202,99,normal,0.0,1.0,,,0.0,1.0 +2,11,202,100,normal,0.0,1.0,,,0.0,1.0 +2,11,202,101,normal,0.0,1.0,,,0.0,1.0 +2,11,202,102,normal,0.0,1.0,,,0.0,1.0 +2,11,202,103,normal,0.0,1.0,,,0.0,1.0 +2,11,202,104,normal,0.0,1.0,,,0.0,1.0 +2,11,202,105,normal,0.0,1.0,,,0.0,1.0 +2,11,202,106,normal,0.0,1.0,,,0.0,1.0 +2,11,202,107,normal,0.0,1.0,,,0.0,1.0 +2,11,202,108,normal,0.0,1.0,,,0.0,1.0 +2,11,202,109,normal,0.0,1.0,,,0.0,1.0 +2,11,202,110,normal,0.0,1.0,,,0.0,1.0 +2,11,202,111,normal,0.0,1.0,,,0.0,1.0 +2,11,202,112,normal,0.0,1.0,,,0.0,1.0 +2,11,202,113,normal,0.0,1.0,,,0.0,1.0 +2,11,202,114,normal,0.0,1.0,,,0.0,1.0 +2,11,202,115,normal,0.0,1.0,,,0.0,1.0 +2,11,202,116,normal,0.0,1.0,,,0.0,1.0 +2,11,202,117,normal,0.0,1.0,,,0.0,1.0 +2,11,202,118,normal,0.0,1.0,,,0.0,1.0 +2,11,202,119,normal,0.0,1.0,,,0.0,1.0 +2,11,202,120,normal,0.0,1.0,,,0.0,1.0 +2,11,202,121,normal,0.0,1.0,,,0.0,1.0 +2,11,202,122,normal,0.0,1.0,,,0.0,1.0 +2,11,202,123,normal,0.0,1.0,,,0.0,1.0 +2,11,202,124,normal,0.0,1.0,,,0.0,1.0 +2,11,202,125,normal,0.0,1.0,,,0.0,1.0 +2,11,202,126,normal,0.0,1.0,,,0.0,1.0 +2,11,202,127,normal,0.0,1.0,,,0.0,1.0 +2,11,202,128,normal,0.0,1.0,,,0.0,1.0 +2,11,202,129,normal,0.0,1.0,,,0.0,1.0 +2,11,202,130,normal,0.0,1.0,,,0.0,1.0 +2,11,202,131,normal,0.0,1.0,,,0.0,1.0 +2,11,202,132,normal,0.0,1.0,,,0.0,1.0 +2,11,202,133,normal,0.0,1.0,,,0.0,1.0 +2,11,202,134,normal,0.0,1.0,,,0.0,1.0 +2,11,202,135,normal,0.0,1.0,,,0.0,1.0 +2,11,202,136,normal,0.0,1.0,,,0.0,1.0 +2,11,202,137,normal,0.0,1.0,,,0.0,1.0 +2,11,202,138,normal,0.0,1.0,,,0.0,1.0 +2,11,202,139,normal,0.0,1.0,,,0.0,1.0 +2,11,202,140,normal,0.0,1.0,,,0.0,1.0 +2,11,202,141,normal,0.0,1.0,,,0.0,1.0 +2,11,202,142,normal,0.0,1.0,,,0.0,1.0 +2,11,202,143,normal,0.0,1.0,,,0.0,1.0 +2,11,202,144,normal,0.0,1.0,,,0.0,1.0 +2,11,202,145,normal,0.0,1.0,,,0.0,1.0 +2,11,202,146,normal,0.0,1.0,,,0.0,1.0 +2,11,202,147,normal,0.0,1.0,,,0.0,1.0 +2,11,202,148,normal,0.0,1.0,,,0.0,1.0 +2,11,202,149,normal,0.0,1.0,,,0.0,1.0 +2,11,202,150,normal,0.0,1.0,,,0.0,1.0 +2,11,202,151,normal,0.0,1.0,,,0.0,1.0 +2,11,202,152,normal,0.0,1.0,,,0.0,1.0 +2,11,202,153,normal,0.0,1.0,,,0.0,1.0 +2,11,202,154,normal,0.0,1.0,,,0.0,1.0 +2,11,202,155,normal,0.0,1.0,,,0.0,1.0 +2,11,202,156,normal,0.0,1.0,,,0.0,1.0 +2,11,202,157,normal,0.0,1.0,,,0.0,1.0 +2,11,202,158,normal,0.0,1.0,,,0.0,1.0 +2,11,202,159,normal,0.0,1.0,,,0.0,1.0 +2,11,202,160,normal,0.0,1.0,,,0.0,1.0 +2,11,202,161,normal,0.0,1.0,,,0.0,1.0 +2,11,202,162,normal,0.0,1.0,,,0.0,1.0 +2,11,202,163,normal,0.0,1.0,,,0.0,1.0 +2,11,202,164,normal,0.0,1.0,,,0.0,1.0 +2,11,202,165,normal,0.0,1.0,,,0.0,1.0 +2,11,202,166,normal,0.0,1.0,,,0.0,1.0 +2,11,202,167,normal,0.0,1.0,,,0.0,1.0 +2,11,202,168,normal,0.0,1.0,,,0.0,1.0 +2,11,202,169,normal,0.0,1.0,,,0.0,1.0 +2,11,202,170,normal,0.0,1.0,,,0.0,1.0 +2,11,202,171,normal,0.0,1.0,,,0.0,1.0 +2,11,202,172,normal,0.0,1.0,,,0.0,1.0 +2,11,202,173,normal,0.0,1.0,,,0.0,1.0 +2,11,202,174,normal,0.0,1.0,,,0.0,1.0 +2,11,202,175,normal,0.0,1.0,,,0.0,1.0 +2,11,202,176,normal,0.0,1.0,,,0.0,1.0 +2,11,202,177,normal,0.0,1.0,,,0.0,1.0 +2,11,202,178,normal,0.0,1.0,,,0.0,1.0 +2,11,202,179,normal,0.0,1.0,,,0.0,1.0 +2,11,202,180,normal,0.0,1.0,,,0.0,1.0 +2,11,202,181,normal,0.0,1.0,,,0.0,1.0 +2,11,202,182,normal,0.0,1.0,,,0.0,1.0 +2,11,202,183,normal,0.0,1.0,,,0.0,1.0 +2,11,202,184,normal,0.0,1.0,,,0.0,1.0 +2,11,202,185,normal,0.0,1.0,,,0.0,1.0 +2,11,202,186,normal,0.0,1.0,,,0.0,1.0 +2,11,202,187,normal,0.0,1.0,,,0.0,1.0 +2,11,202,188,normal,0.0,1.0,,,0.0,1.0 +2,11,202,189,normal,0.0,1.0,,,0.0,1.0 +2,11,202,190,normal,0.0,1.0,,,0.0,1.0 +2,11,202,191,normal,0.0,1.0,,,0.0,1.0 +2,11,202,192,normal,0.0,1.0,,,0.0,1.0 +2,11,202,193,normal,0.0,1.0,,,0.0,1.0 +2,11,202,194,normal,0.0,1.0,,,0.0,1.0 +2,11,202,195,normal,0.0,1.0,,,0.0,1.0 +2,11,202,196,normal,0.0,1.0,,,0.0,1.0 +2,11,202,197,normal,0.0,1.0,,,0.0,1.0 +2,11,202,198,normal,0.0,1.0,,,0.0,1.0 +2,11,202,199,normal,0.0,1.0,,,0.0,1.0 +2,11,202,200,normal,0.0,1.0,,,0.0,1.0 +2,11,202,201,normal,0.0,1.0,,,0.0,1.0 +2,11,202,202,normal,0.0,1.0,,,0.0,1.0 +2,11,202,203,normal,0.0,1.0,,,0.0,1.0 +2,11,202,204,normal,0.0,1.0,,,0.0,1.0 +2,11,202,205,normal,0.0,1.0,,,0.0,1.0 +2,11,202,206,normal,0.0,1.0,,,0.0,1.0 +2,11,202,207,normal,0.0,1.0,,,0.0,1.0 +2,11,202,208,normal,0.0,1.0,,,0.0,1.0 +2,11,202,209,normal,0.0,1.0,,,0.0,1.0 +2,11,202,210,normal,0.0,1.0,,,0.0,1.0 +2,11,202,211,normal,0.0,1.0,,,0.0,1.0 +2,11,202,212,normal,0.0,1.0,,,0.0,1.0 +2,11,202,213,normal,0.0,1.0,,,0.0,1.0 +2,11,202,214,normal,0.0,1.0,,,0.0,1.0 +2,11,202,215,normal,0.0,1.0,,,0.0,1.0 +2,11,202,216,normal,0.0,1.0,,,0.0,1.0 +2,11,202,217,normal,0.0,1.0,,,0.0,1.0 +2,11,202,218,normal,0.0,1.0,,,0.0,1.0 +2,11,202,219,normal,0.0,1.0,,,0.0,1.0 +2,11,202,220,normal,0.0,1.0,,,0.0,1.0 +2,11,202,221,normal,0.0,1.0,,,0.0,1.0 +2,11,202,222,normal,0.0,1.0,,,0.0,1.0 +2,11,202,223,normal,0.0,1.0,,,0.0,1.0 +2,11,202,224,normal,0.0,1.0,,,0.0,1.0 +2,11,202,225,normal,0.0,1.0,,,0.0,1.0 diff --git a/requirements.txt b/requirements.txt index 4a95ff7..8759e2e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,7 +2,6 @@ numpy==1.16.* matplotlib==2.* scipy==1.* openturns>=1.14 -pandas jupyterlab nbconvert black diff --git a/tests/test_BBRCDistribution.py b/tests/test_BBRCDistribution.py new file mode 100644 index 0000000..a301358 --- /dev/null +++ b/tests/test_BBRCDistribution.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +""" +Test for BBRCDistribution class. +""" +import otbenchmark as otb +import unittest +import numpy as np +import openturns as ot + + +class CheckBBRCDistribution(unittest.TestCase): + def test_BBRCDistribution(self): + my_dist = otb.BBRCDistribution(-1, 1) + + # Check the distribution with a CDF value + exact_dist = ot.ComposedDistribution( + [ + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(120, 12)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(50, 10)), + ot.ParametrizedDistribution(ot.LogNormalMuSigma(40, 8)), + ] + ) + exact_cdf_value = exact_dist.computeCDF([150] * 6) + inputDistribution = my_dist.build_composed_dist() + tested_cdf_value = inputDistribution.computeCDF([150] * 6) + np.testing.assert_allclose(exact_cdf_value, tested_cdf_value, rtol=1.0e-15) + + +if __name__ == "__main__": + unittest.main() diff --git a/tests/test_RequestedBBRCProblem.py b/tests/test_RequestedBBRCProblem.py new file mode 100644 index 0000000..a4025b9 --- /dev/null +++ b/tests/test_RequestedBBRCProblem.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +""" +Test for RequestedBBRCProblem class. +""" +import otbenchmark as otb +import unittest +import numpy as np +import openturns as ot + + +class CheckRequestedBBRCProblem(unittest.TestCase): + def test_RequestedBBRCProblem(self): + problem = otb.RequestedBBRCProblem("testuser", "testpass", -1, 1) + print(problem) + + # Check probability + pf = problem.getProbability() + pf_exacte = 0.0007888456943755395 + np.testing.assert_allclose(pf, pf_exacte, rtol=1.0e-15) + + # Check function + event = problem.getEvent() + function = event.getFunction() + X = [0.0] * 6 + Y = function(X) + assert type(Y) is ot.Point + np.testing.assert_allclose(Y[0], 0) + + +if __name__ == "__main__": + unittest.main()