1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
#!/usr/bin/env python
import openturns as ot
import persalys
myStudy = persalys.Study('myStudy')
persalys.Study.Add(myStudy)
dist_Q = ot.Normal(10200, 100)
Q = persalys.Input('Q', 10200, dist_Q, 'Primary energy (W.h)')
dist_E = ot.Normal(3000, 15)
E = persalys.Input('E', 3000, dist_E, 'Produced electric energy (W.h)')
dist_C = ot.Normal(4000, 60)
C = persalys.Input('C', 4000, dist_C, 'Valued thermal energy (W.h)')
Ep = persalys.Output('Ep', 'Primary energy savings (W.h)')
inputs = [Q, E, C]
outputs = [Ep]
formulas = ['1-(Q/((E/((1-0.05)*0.54))+(C/0.8)))']
myPhysicalModel = persalys.SymbolicPhysicalModel('myPhysicalModel', inputs, outputs, formulas)
myStudy.add(myPhysicalModel)
values = [[10035.5, 10364.5],
[2975.33, 3024.67],
[3901.31, 4098.69]]
aDesign_0 = persalys.GridDesignOfExperiment('aDesign_0', myPhysicalModel, values)
aDesign_0.setBlockSize(1)
interestVariables = ['Ep']
aDesign_0.setInterestVariables(interestVariables)
myStudy.add(aDesign_0)
myTaylorExpansionMoments = persalys.TaylorExpansionMomentsAnalysis('myTaylorExpansionMoments', myPhysicalModel)
myStudy.add(myTaylorExpansionMoments)
myMonteCarlo = persalys.MonteCarloAnalysis('myMonteCarlo', myPhysicalModel)
myMonteCarlo.setMaximumCalls(1000)
myMonteCarlo.setMaximumCoefficientOfVariation(-1)
myMonteCarlo.setMaximumElapsedTime(60)
myMonteCarlo.setBlockSize(1)
myMonteCarlo.setSeed(0)
myStudy.add(myMonteCarlo)
mySobol = persalys.SobolAnalysis('mySobol', myPhysicalModel)
mySobol.setMaximumCalls(1000)
mySobol.setMaximumConfidenceIntervalLength(0.01)
mySobol.setMaximumElapsedTime(60)
mySobol.setBlockSize(1)
mySobol.setReplicationSize(200)
mySobol.setSeed(0)
mySobol.setConfidenceLevel(0.95)
myStudy.add(mySobol)
mySRC = persalys.SRCAnalysis('mySRC', myPhysicalModel, 10000)
mySRC.setBlockSize(1)
mySRC.setSeed(0)
myStudy.add(mySRC)
values = [[10035.5, 10072.1, 10108.6, 10145.2, 10181.7, 10218.3, 10254.8, 10291.4, 10327.9, 10364.5],
[2975.33, 2980.81, 2986.29, 2991.78, 2997.26, 3002.74, 3008.22, 3013.71, 3019.19, 3024.67],
[3901.31, 3923.24, 3945.17, 3967.1, 3989.03, 4010.97, 4032.9, 4054.83, 4076.76, 4098.69]]
aDesign_1 = persalys.GridDesignOfExperiment('aDesign_1', myPhysicalModel, values)
aDesign_1.setBlockSize(1)
interestVariables = ['Ep']
aDesign_1.setInterestVariables(interestVariables)
myStudy.add(aDesign_1)
chaos_0 = persalys.FunctionalChaosAnalysis('chaos_0', aDesign_1)
chaos_0.setChaosDegree(2)
chaos_0.setSparseChaos(False)
chaos_0.setAnalyticalValidation(True)
chaos_0.setTestSampleValidation(False)
chaos_0.setKFoldValidation(False)
myStudy.add(chaos_0)
|