pystra.ddo.LQI#

class LQI(swtp=None, consequence=None, target=None)[source]#

Bases: DDOCriterion

Minimum acceptable life-safety criterion using LQI/SWTP.

The criterion adds consequence valuation and LQI acceptability columns to the reliability and objective results produced by DDO. It does not select the economic optimum by itself.

Methods

acceptability_margin

Return the JCSS marginal LQI acceptability margin.

evaluate

Return decision results with LQI/SWTP columns.

feasible

Return a boolean feasibility mask for evaluated results.

from_country

Create an LQI criterion from a built-in country SWTP value.

from_lqi

Create an LQI criterion from the LQI SWTP relation.

from_swtp

Create an LQI criterion from an SWTP value.

marginal_acceptance

Return the finite-difference JCSS LQI acceptability margin.

risk_cost

Return the JCSS LQI life-safety risk-cost term.

risk_cost_from_result

Return LQI risk cost from an aggregated risk result.

classmethod from_swtp(swtp, *, expected_fatalities_given_failure=None, consequence=None, marginal_safety_cost, variability='medium')[source]#

Create an LQI criterion from an SWTP value.

Parameters:
  • swtp (Union[float, SWTP]) – Societal willingness to pay per statistical life.

  • expected_fatalities_given_failure (Optional[float]) – Expected fatalities conditional on failure.

  • consequence (Optional[FatalityConsequence]) – Consequence model. Use this instead of expected_fatalities_given_failure when exposure and fatality probability should remain explicit.

  • marginal_safety_cost (float) – Marginal annual safety cost used in the LQI target-reliability table.

  • variability (str) – Variability class for the LQI target-reliability table.

Return type:

LQI

classmethod from_country(code, *, expected_fatalities_given_failure=None, consequence=None, marginal_safety_cost, indexed=None, variability='medium')[source]#

Create an LQI criterion from a built-in country SWTP value.

Return type:

LQI

classmethod from_lqi(*, gross_domestic_product_per_capita, mortality_rate, demographic_constant, expected_fatalities_given_failure=None, consequence=None, marginal_safety_cost, variability='medium', currency='currency units', price_year=None, source='LQI relation SWTP = g / q * G')[source]#

Create an LQI criterion from the LQI SWTP relation.

Return type:

LQI

property expected_fatalities_given_failure: float | None#

Return expected fatalities conditional on failure when available.

property k1: float | None#

Return the LQI safety cost ratio when a target is available.

risk_cost(safety_cost, failure_rate)[source]#

Return the JCSS LQI life-safety risk-cost term.

risk_cost_from_result(safety_cost, risk, include_economic_loss=False)[source]#

Return LQI risk cost from an aggregated risk result.

Return type:

float

acceptability_margin(safety_cost_derivative, failure_rate_derivative)[source]#

Return the JCSS marginal LQI acceptability margin.

Return type:

float

marginal_acceptance(safety_cost, failure_rate, design, step=None)[source]#

Return the finite-difference JCSS LQI acceptability margin.

Return type:

float

evaluate(results)[source]#

Return decision results with LQI/SWTP columns.

Return type:

DataFrame

feasible(results)#

Return a boolean feasibility mask for evaluated results.

Return type:

Series