Description Usage Parameters Details References See Also Examples
A mtk
compliant implementation of the morris
method for experiments design and sensitivity analysis.
mtkMorrisDesigner(listParameters = NULL)
mtkNativeDesigner(design="Morris", information=NULL)
mtkMorrisAnalyser(listParameters = NULL)
mtkNativeAnalyser(analyze="Morris", information=NULL)
r
:the number of trajectories or a pair (r1,r2)
if the version due to Campolongo et al. (2007) is used.
type
:the type of design (either oat
or simplex
).
levels
:the number of levels per factor (if type = "oat"
).
grid.jump
:the length of the steps within the trajectories (if type = "oat"
).
scale.factor
:a numeric value, the homothety factor of the (isometric) simplexes (if type = "simplex"
).
scale
:logical. If TRUE, the input design of experiments is scaled before computing the elementary effects so that all factors vary within the range [0,1].
shrink
:a scalar or a vector of scalars between 0 and 1, specifying shrinkage to be used on the probabilities before calculating the quantiles.
The mtk
implementation uses the morris
function of the sensitivity
package. For further details on the arguments and the behavior, see help(morris, sensitivity)
.
The mtk
implementation of the Morris
method includes the following classes:
mtkMorrisDesigner
:for the Morris
design processes.
mtkMorrisAnalyser
:for Morris
analysis processes.
mtkMorrisDesignerResult
:to store and manage the design.
mtkMorrisAnalyserResult
:to store and manage the analysis results.
Many ways to create a Morris
designer are available in mtk
, but we recommend the following class constructors:
mtkMorrisDesigner
or mtkNativeDesigner
.
Many ways to create a Morris
analyser are available in mtk
, but we recommend the following class constructors:
mtkMorrisAnalyser
or mtkNativeAnalyser
.
The method Morris
is usually used both to build the experiment design and to carry out the sensitivity analysis. In such case,
we can use the mtkDefaultAnalyser
instead of naming explicitly the method for sensitivity analysis (see example III in the examples section)
Campolongo, F., J. Cariboni, and A. Saltelli, 2007. An effective screening design for sensitivity analysis of large models. Environmental Modelling and Software, 22, 1509–1518.
Saltelli A., Chan K.and Scott E. M., 2000. Sensitivity Analysis. Wiley, New York
Pujol G., 2009, Simplex-based screening designs for estimating metamodels, Reliability Engineering and System Safety 94, 1156–1160.
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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | ## Sensitivity analysis of the "Ishigami" model with the "Morris" method
# Example I: by using the class constructors: mtkMorrisDesigner() and mtkMorrisAnalyser()
# Generate the factors
data(Ishigami.factors)
# Build the processes and workflow:
# 1) the design process
exp1.designer <- mtkMorrisDesigner(
listParameters = list(r=20, type="oat",
levels=4, grid.jump=2)
)
# 2) the simulation process
exp1.evaluator <- mtkNativeEvaluator(model="Ishigami")
# 3) the analysis process
exp1.analyser <- mtkMorrisAnalyser()
# 4) the workflow
exp1 <- mtkExpWorkflow(expFactors=Ishigami.factors,
processesVector = c(design=exp1.designer,
evaluate=exp1.evaluator,
analyze=exp1.analyser)
)
# Run the workflow and reports the results.
run(exp1)
print(exp1)
plot(exp1)
# plot3d.morris(extractData(exp1, name="analyze"))
## Example II: by using the class constructors: mtkNativeDesigner() and mtkMorrisAnalyser()
# Generate the factors
data(Ishigami.factors)
# Build the processes and workflow:
# 1) the design process
exp1.designer <- mtkNativeDesigner(design = "Morris",
information = list(r=20, type="oat",
levels=4, grid.jump=2)
)
# 2) the simulation process
exp1.evaluator <- mtkNativeEvaluator(model="Ishigami")
# 3) the analysis process with the default method
exp1.analyser <- mtkMorrisAnalyser()
# 4) the workflow
exp1 <- mtkExpWorkflow(expFactors=Ishigami.factors,
processesVector = c(design=exp1.designer,
evaluate=exp1.evaluator,
analyze=exp1.analyser)
)
# Run the workflow and reports the results.
run(exp1)
print(exp1)
## Example III: by using the class constructors: mtkMorrisDesigner() and mtkDefaultAnalyser()
# Generate the factors
data(Ishigami.factors)
# Build the processes and workflow:
# 1) the design process
exp1.designer <- mtkMorrisDesigner( listParameters =
list(r=20, type="oat",
levels=4, grid.jump=2))
# 2) the simulation process
exp1.evaluator <- mtkNativeEvaluator(model="Ishigami")
# 3) the analysis process with the default method
exp1.analyser <- mtkDefaultAnalyser()
# 4) the workflow
exp1 <- mtkExpWorkflow(expFactors=Ishigami.factors,
processesVector = c(design=exp1.designer,
evaluate=exp1.evaluator,
analyze=exp1.analyser))
# Run the workflow and reports the results.
run(exp1)
print(exp1)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.