Learn R Programming

mtk (version 1.0)

Fast: The extended Fourier Amplitude Sensitivity Test for sensitivity analysis

Description

A mtk compliant implementation of the so-called extended-FAST or e-Fast method for experiments design and sensitivity analysis.

Arguments

Usage

  • mtkFastDesigner(listParameters = NULL)
  • mtkNativeDesigner(design="Fast", information=NULL)
  • mtkFastAnalyser()
  • mtkNativeAnalyser(analyze="Fast", information=NULL)

Parameters used to manage the sampling method

n:
(numeric) the number of iteration.

Parameters used to manage the analysis method

No parameter is necessary.

Details

  1. The mtk implementation uses the fast99 function of the sensitivity package. For further details on the arguments and the behaviour, see help(fast99, sensitivity).
  2. The mtk implementation of the Fast method includes the following classes:
    mtkFastDesigner:
    for Fast design processes.
    mtkFastAnalyser:
    for Fast analysis processes.
    mtkFastDesignerResult:
    to store and manage the design.
    mtkFastAnalyserResult:
    to store and manage the analysis results.
  3. Many ways to create a Fast designer are available in mtk, but we recommend the following class constructors: mtkFastDesigner or mtkNativeDesigner.
  4. Many ways to create a Fast analyser are available in mtk, but we recommend the following class constructors: mtkFastAnalyser or mtkNativeAnalyser.
  5. The method Fast 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)

References

  1. A. Saltelli, K. Chan and E. M. Scott (2000). Sensitivity Analysis. Wiley, New York.
  2. J. Wang, H. Richard, R. Faivre, H. Monod (2013). Le package mtk, une bibliothèque R pour l'exploration numérique des modèles. In: Analyse de sensibilité et exploration de modèles : Application aux sciences de la nature et de l'environnement (R. Faivre, B. Iooss, S. Mahévas, D. Makowski, H. Monod, Eds). Editions Quae, Versailles.

See Also

help(fast99, sensitivity)

Examples

Run this code

## Sensitivity analysis of the "Ishigami" model with the "Fast" method 

#	Example I: by using the class constructors: mtkFastDesigner() and mtkFastAnalyser()

#	Input the factors
		data(Ishigami.factors)
		
# 	Build the processes and workflow:

#   1) the design process
		exp1.designer <- mtkFastDesigner(listParameters
	    	= list(n=1000)) 

#   2) the simulation process
		exp1.evaluator <- mtkNativeEvaluator(model="Ishigami") 

#   3) the analysis process 
		exp1.analyser <- mtkFastAnalyser()

#   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)
		
## 	Example II:  by using the class constructors: mtkNativeDesigner() and mtkFastAnalyser()

#	Generate the factors
		data(Ishigami.factors)
		
# 	Build the processes and workflow:

#   1) the design process
		exp1.designer <- mtkNativeDesigner(design = "Fast",information=list(n=1000)) 

#   2) the simulation process
		exp1.evaluator <- mtkNativeEvaluator(model="Ishigami") 

#   3) the analysis process with the default method
		exp1.analyser <- mtkFastAnalyser()

#   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)
		plot(exp1)
		

## 	Example III:  by using the class constructors: mtkFastDesigner() and mtkDefaultAnalyser()

#	Generate the factors
		data(Ishigami.factors)
		
# 	Build the processes and workflow:

#   1) the design process
		exp1.designer <- mtkFastDesigner( listParameters = list(n=2000))  

#   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)
		plot(exp1)

Run the code above in your browser using DataLab