CombineFragilityCurvesWeightedSum
fragility_curves.CombineFragilityCurvesWeightedSum()
Combineer meerdere fragility curves met een gewogen som tot een enkele fragility curve.
Attributes
Name | Type | Description |
---|---|---|
data_adapter | DataAdapter | DataAdapter object |
lst_fragility_curves | list[pd.DataFrame] | Lijst van fragility curves die worden gecombineerd |
df_out | Optional[pd.DataFrame] | None | DataFrame met de gecombineerde fragility curve |
combine_func | Callable | Functie die wordt gebruikt om de fragility curves te combineren |
weights | list[float] | None | Gewichten voor de weighted sum methode, in de zelfde volgorde als de lijst van fragility curves |
fragility_curve_schema | ClassVar[dict[str, str]] | Schema waaraan de fragility curve moet voldoen: hydraulicload: float, failure_probability: float |
interp_func | Callable | Functie waarmee geinterpoleerd wordt in FragilityCurve |
Notes
Bij het combineren van de fragility curves moeten de waterstanden van de curves op elkaar afgestemd worden. Dit gebeurt door de waterstanden van de curves te interpoleren naar een nieuwe set waterstanden. De volgende opties kunnen via de config worden ingesteld:
- extend_past_max. Hoever de nieuwe waterstanden verder gaan dan de maximale waterstanden van de inputcurves. Default is 0.01.
- refine_step_size. De stapgrootte van de waterstanden die gebruikt wordt bij het herschalen van de kansen voor het combineren. Default is 0.05.
Methods
Name | Description |
---|---|
calculate_combined_curve | |
combine_func | Combineer afhankelijk: P(fail,comb|h) = SUM(w_i * P(fail,i|h)) |
interp_func | interpolate_1d met y-waardes omgezet naar log-waardes |
log_exceptions | Stuurt exceptions eerst naar de logger van de DataAdapter |
run | Combineert meerdere fragility curves onafhankelijk |
calculate_combined_curve
fragility_curves.CombineFragilityCurvesWeightedSum.calculate_combined_curve(
extend_past_max,
refine_step_size, )
combine_func
fragility_curves.CombineFragilityCurvesWeightedSum.combine_func(
lst_fragility_curves,=None,
weights )
Combineer afhankelijk: P(fail,comb|h) = SUM(w_i * P(fail,i|h))
interp_func
fragility_curves.CombineFragilityCurvesWeightedSum.interp_func(
x,
xp,
fp,=1e-200,
ll=False,
clip01 )
interpolate_1d met y-waardes omgezet naar log-waardes
Parameters
Name | Type | Description | Default |
---|---|---|---|
x | np.ndarray | X-waardes waarop geinterpoleerd moet worden | required |
xp | np.ndarray | Referentievector van x-waardes | required |
fp | np.ndarray | Referentievector van y-waardes | required |
ll | float | Ondergrens voor de interpolatie, deze waarde of kleiner wordt als 0 gezien | 1e-200 |
clip01 | bool | Begrens resultaat tussen [0, 1] | False |
Returns
Name | Type | Description |
---|---|---|
np.array | geinterpoleerde vector |
log_exceptions
fragility_curves.CombineFragilityCurvesWeightedSum.log_exceptions(method)
Stuurt exceptions eerst naar de logger van de DataAdapter
run
input, output) fragility_curves.CombineFragilityCurvesWeightedSum.run(
Combineert meerdere fragility curves onafhankelijk
Parameters
Name | Type | Description | Default |
---|---|---|---|
input | list[str] | Lijst van namen van de DataAdapters met fragility curves. De laatste lijst hiervan in de gewichten. | required |
output | str | Naam van de output DataAdapter. | required |
Raises
Name | Type | Description |
---|---|---|
UserWarning | Als de lengte van de gewichten niet gelijk is aan het aantal fragility curves, de laatste waarde van de input lijst moet de gewichten bevatten. |