- filenameThe hazard curve csv filename.
C++ Type:std::string
Controllable:No
Description:The hazard curve csv filename.
- ground_motionsThe GroundMotionReader object to extract ground motion data from to build the hazard curve.
C++ Type:UserObjectName
Controllable:No
Description:The GroundMotionReader object to extract ground motion data from to build the hazard curve.
- reference_accelerationGround motion reference acceleration(s).
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Ground motion reference acceleration(s).
HazardCurve
Reads the hazard curve file and creates ground motion bins for time-based assessment.
Description
The HazardCurve
UserObject is a part of the Seismic Probabilistic Risk Assessment framework in MASTODON. The HazardCurve
UserObject reads the hazard curve data from a .csv file and divides the hazard curve into a number of bins provided by the number_of_bins
parameter. Currently, the UserObject assumes that the hazard curve is provided as the Mean Annual Frequency of Exceedance (MAFE) of the peak ground acceleration (PGA). The hazard curve is binned by linearly interpolating the hazard curve in a log-linear scale (MAFE in the log scale and PGA in the linear scale). Each bin is assigned a PGA value that is the midpoint of the bin. After binning the hazard curve, the HazardCurve
UserObject also scales the ground motions read by the GroundMotionReader
for use in risk assessment for each hazard bin. For this purpose, it is assumed that the input ground motions are at a reference PGA provided by the reference_acceleration
input parameter. The ground motions are then linearly scaled to the PGA of each bin and then used for risk assessment.
The listing below provides a sample application of the HazardCurve
and GroundMotionReader
UserObjects. In this application, the ground motions with a specific pattern are read and a hazard curve is read from the file hazard.csv. This hazard curve is split into two bins and the ground motions (assumed to be provided at a reference PGA of 0.4g) are scaled to these bins.
[UserObjects<<<{"href": "../../syntax/UserObjects/index.html"}>>>]
[./motions]
type = GroundMotionReader<<<{"description": "Reads ground motion data from files.", "href": "GroundMotionReader.html"}>>>
pattern<<<{"description": "The filename pattern (glob) for the ground motions to read."}>>> = '../../data/ground_motion_*.csv'
[../]
[./hazard]
type = HazardCurve<<<{"description": "Reads the hazard curve file and creates ground motion bins for time-based assessment.", "href": "HazardCurve.html"}>>>
filename<<<{"description": "The hazard curve csv filename."}>>> = '../../data/hazard.csv'
number_of_bins<<<{"description": "The number of bins to create from the hazard curve data."}>>> = 2
ground_motions<<<{"description": "The GroundMotionReader object to extract ground motion data from to build the hazard curve."}>>> = motions
reference_acceleration<<<{"description": "Ground motion reference acceleration(s)."}>>> = 0.4
[../]
[]
(test/tests/transfers/hazard_curve_transfer/hazard_curve_master.i)Input Parameters
- number_of_bins10The number of bins to create from the hazard curve data.
Default:10
C++ Type:unsigned int
Controllable:No
Description:The number of bins to create from the hazard curve data.
Optional Parameters
- allow_duplicate_execution_on_initialFalseIn the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).
Default:False
C++ Type:bool
Controllable:No
Description:In the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).
- execution_order_group0Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.
Default:0
C++ Type:int
Controllable:No
Description:Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.
- force_postauxFalseForces the UserObject to be executed in POSTAUX
Default:False
C++ Type:bool
Controllable:No
Description:Forces the UserObject to be executed in POSTAUX
- force_preauxFalseForces the UserObject to be executed in PREAUX
Default:False
C++ Type:bool
Controllable:No
Description:Forces the UserObject to be executed in PREAUX
- force_preicFalseForces the UserObject to be executed in PREIC during initial setup
Default:False
C++ Type:bool
Controllable:No
Description:Forces the UserObject to be executed in PREIC during initial setup
Execution Scheduling Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Controllable:Yes
Description:Set the enabled status of the MooseObject.
- use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.
Default:False
C++ Type:bool
Controllable:No
Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.
Advanced Parameters
- prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
C++ Type:MaterialPropertyName
Unit:(no unit assumed)
Controllable:No
Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
- use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.
Default:False
C++ Type:bool
Controllable:No
Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.