MultiFORM¶
- class MultiFORM(*args)¶
FORM approximation with multiple design points.
This algorithm searches for several design points by restarting the nearest-point search. For each design point we add a bulge function that penalizes the limit-state G around it:
The bulge function can be chosed as:
Once these points are found a FORM is computed with each point and the probability of interest is computed as a series system probability: the union of the approximated events:
Beware, as with the regular FORM method the search can fail, or the enumeration of design can be not incomplete.
More details can be found in [kiureghian1998].
- Parameters:
- solver
OptimizationAlgorithm
Optimization algorithm used to research the design point.
- event
RandomVector
Failure event
- physicalStartingPointsequence of float
Starting point of the optimization algorithm, declared in the physical space.
- solver
See also
Examples
>>> import openturns as ot >>> dim = 2 >>> f = ot.SymbolicFunction(['x0', 'x1'], ['5.0-x1-0.5*(x0-0.1)^2']) >>> dist = ot.Normal(dim) >>> X = ot.RandomVector(dist) >>> Y = ot.CompositeRandomVector(f, X) >>> event = ot.ThresholdEvent(Y, ot.Less(), 0.0) >>> solver = ot.Cobyla() >>> starting_pt = dist.getMean() >>> algo = ot.MultiFORM(solver, event, starting_pt) >>> algo.run() >>> result = algo.getResult() >>> n_design_pts = len(result.getFORMResultCollection()) >>> pf = result.getEventProbability()
Methods
Accessor to the result.
Accessor to the object's name.
getEvent
()Accessor to the event of which the probability is calculated.
getId
()Accessor to the object's id.
Accessor to the maximum number of design points.
getName
()Accessor to the object's name.
Accessor to the optimization algorithm used to find the design point.
Accessor to the starting point of the optimization algorithm.
Accessor to the result.
Accessor to the object's shadowed id.
Accessor to the object's visibility state.
hasName
()Test if the object is named.
Test if the object has a distinguishable name.
run
()Evaluate the failure probability.
setEvent
(event)Accessor to the event of which the probability is calculated.
Accessor to the maximum number of design points.
setName
(name)Accessor to the object's name.
setNearestPointAlgorithm
(solver)Accessor to the optimization algorithm used to find the design point.
setPhysicalStartingPoint
(physicalStartingPoint)Accessor to the starting point of the optimization algorithm.
setResult
(formResult)Accessor to the result of FORM.
setShadowedId
(id)Accessor to the object's shadowed id.
setVisibility
(visible)Accessor to the object's visibility state.
- __init__(*args)¶
- getAnalyticalResult()¶
Accessor to the result.
- Returns:
- result
AnalyticalResult
Result structure which contains the results of the optimisation problem.
- result
- getClassName()¶
Accessor to the object’s name.
- Returns:
- class_namestr
The object class name (object.__class__.__name__).
- getEvent()¶
Accessor to the event of which the probability is calculated.
- Returns:
- event
RandomVector
Event of which the probability is calculated.
- event
- getId()¶
Accessor to the object’s id.
- Returns:
- idint
Internal unique identifier.
- getMaximumDesignPointsNumber()¶
Accessor to the maximum number of design points.
- Returns:
- max_dpint
Maximum number of design points
- getName()¶
Accessor to the object’s name.
- Returns:
- namestr
The name of the object.
- getNearestPointAlgorithm()¶
Accessor to the optimization algorithm used to find the design point.
- Returns:
- algorithm
OptimizationAlgorithm
Optimization algorithm used to research the design point.
- algorithm
- getPhysicalStartingPoint()¶
Accessor to the starting point of the optimization algorithm.
- Returns:
- point
Point
Starting point of the optimization algorithm, declared in the physical space.
- point
- getResult()¶
Accessor to the result.
- Returns:
- result
MultiFORMResult
Contains the global result as well as the sub FORM results.
- result
- getShadowedId()¶
Accessor to the object’s shadowed id.
- Returns:
- idint
Internal unique identifier.
- getVisibility()¶
Accessor to the object’s visibility state.
- Returns:
- visiblebool
Visibility flag.
- hasName()¶
Test if the object is named.
- Returns:
- hasNamebool
True if the name is not empty.
- hasVisibleName()¶
Test if the object has a distinguishable name.
- Returns:
- hasVisibleNamebool
True if the name is not empty and not the default one.
- run()¶
Evaluate the failure probability.
Notes
Evaluate the failure probability and create a
FORMResult
, the structure result which is accessible with the methodgetResult()
.
- setEvent(event)¶
Accessor to the event of which the probability is calculated.
- Parameters:
- event
RandomVector
Event of which the probability is calculated.
- event
- setMaximumDesignPointsNumber(numberOfDesignPoints)¶
Accessor to the maximum number of design points.
- Parameters:
- max_dpint
Maximum number of design points
- setName(name)¶
Accessor to the object’s name.
- Parameters:
- namestr
The name of the object.
- setNearestPointAlgorithm(solver)¶
Accessor to the optimization algorithm used to find the design point.
- Parameters:
- algorithm
OptimizationAlgorithm
Optimization algorithm used to research the design point.
- algorithm
- setPhysicalStartingPoint(physicalStartingPoint)¶
Accessor to the starting point of the optimization algorithm.
- Parameters:
- pointsequence of float
Starting point of the optimization algorithm, declared in the physical space.
- setResult(formResult)¶
Accessor to the result of FORM.
- Parameters:
- result
FORMResult
Structure containing all the results of the FORM analysis.
- result
- setShadowedId(id)¶
Accessor to the object’s shadowed id.
- Parameters:
- idint
Internal unique identifier.
- setVisibility(visible)¶
Accessor to the object’s visibility state.
- Parameters:
- visiblebool
Visibility flag.
Examples using the class¶
Use the FORM algorithm in case of several design points