ResponseHistoryBuilder

The ResponseHistoryBuilder creates a response history given a list of variables and a list of nodes or boundaries. Either a list of nodes or boundaries should be specified, but not both. At the specified node(s) the values of the variables are stored at each time step. Each ResponseHistoryBuilder vectorpostprocessor creates a csv file with a time column and the values of variables at the nodes specified in the list of nodes or in the boundaries. For a variable 'accel_x' at node 2, the column header is 'node_2_accel_x'. The header for the time column is 'time'.

Usage

The input file below contains two ResponseHistoryBuilder vectorpostprocessor blocks. The first block requests output at two nodes, 2 and 10, and the second block requests output at a boundary, 'bnd', which also contains the nodes, 2 and 10. Both blocks request histories for the variables, 'u' and 'accel_x'.

[VectorPostprocessors<<<{"href": "../../syntax/VectorPostprocessors/index.html"}>>>]
  [./accel_nodes]
    type = ResponseHistoryBuilder<<<{"description": "Calculates response histories for a given node and variable(s).", "href": "ResponseHistoryBuilder.html"}>>>
    variables<<<{"description": "Variable name for which the response history is requested."}>>> = 'u accel_x'
    nodes<<<{"description": "Node number(s) at which the response history is needed."}>>> = '2 10'
  [../]
  [./accel_bnd]
    type = ResponseHistoryBuilder<<<{"description": "Calculates response histories for a given node and variable(s).", "href": "ResponseHistoryBuilder.html"}>>>
    variables<<<{"description": "Variable name for which the response history is requested."}>>> = 'u accel_x'
    boundary<<<{"description": "The list of boundaries (ids or names) from the mesh where this object applies"}>>> = 'bnd'
  [../]
[]
(test/tests/vectorpostprocessors/response_history_builder/response_history_builder.i)

As shown in the output csv files below, the response histories for the variables, 'u' and 'accel_x' are output at the requested nodes. The first output file below corresponds to the accel_nodes block and the second output file corresponds to the accel_bnd block. Note that both the output files are exactly the same, since the same variables are requested and the boundary, 'bnd' has the same nodes, 2 and 10.

time,node_2_u,node_2_accel_x,node_10_u,node_10_accel_x
0,0,0,0,0
1,0.28854648176682,1,0.60975860297894,1
2,0.32913441959223,4,0.66224736725063,4
3,0.33297015830727,9,0.6662994846559,9
4,0.33330242242944,16,0.66663568290804,16
5,0.33333071134035,25,0.66666404334906,25
(test/tests/vectorpostprocessors/response_history_builder/gold/response_history_builder_out_accel_nodes.csv)
time,node_2_u,node_2_accel_x,node_10_u,node_10_accel_x
0,0,0,0,0
1,0.28854648176682,1,0.60975860297894,1
2,0.32913441959223,4,0.66224736725063,4
3,0.33297015830727,9,0.6662994846559,9
4,0.33330242242944,16,0.66663568290804,16
5,0.33333071134035,25,0.66666404334906,25
(test/tests/vectorpostprocessors/response_history_builder/gold/response_history_builder_out_accel_bnd.csv)

Input Parameters

  • variablesVariable name for which the response history is requested.

    C++ Type:std::vector<VariableName>

    Unit:(no unit assumed)

    Controllable:No

    Description:Variable name for which the response history is requested.

Required Parameters

  • blockThe list of blocks (ids or names) that this object will be applied

    C++ Type:std::vector<SubdomainName>

    Controllable:No

    Description:The list of blocks (ids or names) that this object will be applied

  • boundaryThe list of boundaries (ids or names) from the mesh where this object applies

    C++ Type:std::vector<BoundaryName>

    Controllable:No

    Description:The list of boundaries (ids or names) from the mesh where this object applies

  • nodesNode number(s) at which the response history is needed.

    C++ Type:std::vector<unsigned long>

    Controllable:No

    Description:Node number(s) at which the response history is needed.

  • parallel_typeREPLICATEDSet how the data is represented within the VectorPostprocessor (VPP); 'distributed' indicates that data within the VPP is distributed and no auto communication is performed, this setting will result in parallel output within the CSV output; 'replicated' indicates that the data within the VPP is correct on processor 0, the data will automatically be broadcast to all processors unless the '_auto_broadcast' param is set to false within the validParams function.

    Default:REPLICATED

    C++ Type:MooseEnum

    Options:DISTRIBUTED, REPLICATED

    Controllable:No

    Description:Set how the data is represented within the VectorPostprocessor (VPP); 'distributed' indicates that data within the VPP is distributed and no auto communication is performed, this setting will result in parallel output within the CSV output; 'replicated' indicates that the data within the VPP is correct on processor 0, the data will automatically be broadcast to all processors unless the '_auto_broadcast' param is set to false within the validParams function.

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.

  • outputsVector of output names where you would like to restrict the output of variables(s) associated with this object

    C++ Type:std::vector<OutputName>

    Controllable:No

    Description:Vector of output names where you would like to restrict the output of variables(s) associated with this object

  • seed0The seed for the master random number generator

    Default:0

    C++ Type:unsigned int

    Controllable:No

    Description:The seed for the master random number generator

  • 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

Input Files