- add_sideset_idsThe listed sideset ids will be assumed valid for the mesh. This permits setting up boundary restrictions for sidesets initially containing no sides. Names for this sidesets may be provided using add_sideset_names. In this case this list and add_sideset_names must contain the same number of items.
C++ Type:std::vector<short>
Unit:(no unit assumed)
Controllable:No
Description:The listed sideset ids will be assumed valid for the mesh. This permits setting up boundary restrictions for sidesets initially containing no sides. Names for this sidesets may be provided using add_sideset_names. In this case this list and add_sideset_names must contain the same number of items.
- add_sideset_namesThe listed sideset names will be assumed valid for the mesh. This permits setting up boundary restrictions for sidesets initially containing no sides. Ids for this sidesets may be provided using add_sideset_ids. In this case this list and add_sideset_ids must contain the same number of items.
C++ Type:std::vector<BoundaryName>
Unit:(no unit assumed)
Controllable:No
Description:The listed sideset names will be assumed valid for the mesh. This permits setting up boundary restrictions for sidesets initially containing no sides. Ids for this sidesets may be provided using add_sideset_ids. In this case this list and add_sideset_ids must contain the same number of items.
- add_subdomain_idsThe listed subdomain ids will be assumed valid for the mesh. This permits setting up subdomain restrictions for subdomains initially containing no elements, which can occur, for example, in additive manufacturing simulations which dynamically add and remove elements. Names for this subdomains may be provided using add_subdomain_names. In this case this list and add_subdomain_names must contain the same number of items.
C++ Type:std::vector<unsigned short>
Unit:(no unit assumed)
Controllable:No
Description:The listed subdomain ids will be assumed valid for the mesh. This permits setting up subdomain restrictions for subdomains initially containing no elements, which can occur, for example, in additive manufacturing simulations which dynamically add and remove elements. Names for this subdomains may be provided using add_subdomain_names. In this case this list and add_subdomain_names must contain the same number of items.
- add_subdomain_namesThe listed subdomain names will be assumed valid for the mesh. This permits setting up subdomain restrictions for subdomains initially containing no elements, which can occur, for example, in additive manufacturing simulations which dynamically add and remove elements. IDs for this subdomains may be provided using add_subdomain_ids. Otherwise IDs are automatically assigned. In case add_subdomain_ids is set too, both lists must contain the same number of items.
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:The listed subdomain names will be assumed valid for the mesh. This permits setting up subdomain restrictions for subdomains initially containing no elements, which can occur, for example, in additive manufacturing simulations which dynamically add and remove elements. IDs for this subdomains may be provided using add_subdomain_ids. Otherwise IDs are automatically assigned. In case add_subdomain_ids is set too, both lists must contain the same number of items.
- allow_renumberingTrueIf allow_renumbering=false, node and element numbers are kept fixed until deletion
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:If allow_renumbering=false, node and element numbers are kept fixed until deletion
- boundaryBoundary ID(s) through which nekRS will be coupled to MOOSE
C++ Type:std::vector<int>
Unit:(no unit assumed)
Controllable:No
Description:Boundary ID(s) through which nekRS will be coupled to MOOSE
- build_all_side_lowerd_meshFalseTrue to build the lower-dimensional mesh for all sides.
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:True to build the lower-dimensional mesh for all sides.
- coord_blockBlock IDs for the coordinate systems. If this parameter is specified, then it must encompass all the subdomains on the mesh.
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:Block IDs for the coordinate systems. If this parameter is specified, then it must encompass all the subdomains on the mesh.
- exactFalseWhether the mesh mirror is an exact replica of the NekRS mesh
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether the mesh mirror is an exact replica of the NekRS mesh
- fluid_block_id0Subdomain ID to use for the fluid mesh mirror
Default:0
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:Subdomain ID to use for the fluid mesh mirror
- ghosting_patch_sizeThe number of nearest neighbors considered for ghosting purposes when 'iteration' patch update strategy is used. Default is 5 * patch_size.
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:The number of nearest neighbors considered for ghosting purposes when 'iteration' patch update strategy is used. Default is 5 * patch_size.
- max_leaf_size10The maximum number of points in each leaf of the KDTree used in the nearest neighbor search. As the leaf size becomes larger,KDTree construction becomes faster but the nearest neighbor searchbecomes slower.
Default:10
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:The maximum number of points in each leaf of the KDTree used in the nearest neighbor search. As the leaf size becomes larger,KDTree construction becomes faster but the nearest neighbor searchbecomes slower.
- orderfirstOrder of the mesh interpolation between nekRS and MOOSE
Default:first
C++ Type:MooseEnum
Unit:(no unit assumed)
Controllable:No
Description:Order of the mesh interpolation between nekRS and MOOSE
- parallel_typeDEFAULTDEFAULT: Use libMesh::ReplicatedMesh unless --distributed-mesh is specified on the command line REPLICATED: Always use libMesh::ReplicatedMesh DISTRIBUTED: Always use libMesh::DistributedMesh
Default:DEFAULT
C++ Type:MooseEnum
Unit:(no unit assumed)
Controllable:No
Description:DEFAULT: Use libMesh::ReplicatedMesh unless --distributed-mesh is specified on the command line REPLICATED: Always use libMesh::ReplicatedMesh DISTRIBUTED: Always use libMesh::DistributedMesh
- scaling1Scaling factor to apply to the mesh
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor to apply to the mesh
- skip_refine_when_use_splitTrueTrue to skip uniform refinements when using a pre-split mesh.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:True to skip uniform refinements when using a pre-split mesh.
- solid_block_id1Subdomain ID to use for the solid mesh mirror
Default:1
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:Subdomain ID to use for the solid mesh mirror
- volumeFalseWhether the nekRS volume will be coupled to MOOSE
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether the nekRS volume will be coupled to MOOSE
NekRSMesh
Construct a mirror of the NekRS mesh in boundary and/or volume format
Description
This class constructs a "mirror" mesh of the NekRS domain as a MooseMesh so that other MOOSE applications can send/receive data to/from this mesh using MOOSE Transfers. When data is read from NekRS, NekRSProblem directly accesses solution arrays in NekRS and interpolates them onto the NekRSMesh
mirror. When data is written into NekRS, it is read from a MooseVariable
on the NekRSMesh
and interpolated directly into boundary condition and source arrays in NekRS.
A mesh mirror can be constructed for
Just the NekRS boundaries. This can be used when only boundary coupling/data is desired, such as for Conjugate Heat Transfer (CHT).
The entire NekRS volume. This can be used when only volume coupling/data is desired, such as for temperature and density coupling to MOOSE.
The entire NekRS volume and boundaries. This is the most general mirror, and can be used for concurrent boundary and/or volume coupled, such as for combined CHT and volume coupling to BISON and OpenMC, respectively.
For each choice of mesh domain, there are three options for the "resolution" of the mesh mirror:
first order, or HEX8 elements (for volume mirrors) or QUAD4 elements (for boundary mirrors)
second order, or HEX27 elements (for volume mirrors) or QUAD elements (for boundary mirrors)
"exact" order, which will represent the NekRS high-order mesh exactly using HEX8 elements (for volume mirrors) or QUAD4 elements (for boundary mirrors).
Boundary Mesh Mirror
In boundary mode, NekRSMesh
will read the nodes associated with all NekRS elements on a set of specified boundaries and then build an equivalent MooseMesh
of either first or second order. For example, suppose your NekRS mesh is the one shown in Figure 1; a boundary with ID 2 is indicated. The mesh lines in Figure 1 are shown connecting the GLL quadrature points in NekRS (not the eight nodes that would be needed to define the corners of a hexahedral element).

Figure 1: Example NekRS mesh; mesh lines are shown connecting GLL points
The three different types of mesh mirrors are shown in Figure 2. White dots are shown to indicate the nodes for the first two mesh mirrors (too many nodes would clutter the image if we showed the nodes for the exact mesh mirror as well).

Figure 2: Three different mesh mirrors for boundary 2 in the NekRS mesh from Figure 1
First-order mesh mirrors are selected with
order = FIRST
, giving the first mesh mirror in Figure 2. NekRS's boundary elements are converted to QUAD4. That is, if NekRS uses a polynomial order of 7, data transfers between the mesh mirror and NekRS's mesh would involve interpolations on each element between (7+1)2 NekRS quadrature points and 4 MOOSE nodes.Second-order mesh mirrors are selected with
order = SECOND
, giving the second mesh mirror in Figure 2. NekRS's boundary elements are converted to QUAD9. That is, if NekRS uses a polynomial order of 7, data transfers between the mesh mirror and NekRS's mesh would involve interpolations on each element between (7+1)2 NekRS quadrature points and 9 MOOSE nodes.An "exact" mesh mirror is selected with
exact = true
, giving the third mesh mirror in Figure 2. For each NekRS boundary element, we build N2 QUAD4 elements.
The boundary IDs in boundary
correspond to the boundary IDs in the NekRS mesh, i.e. in the .re2
file. You can set multiple boundaries to construct by passing a vector of sideset IDs; this will add multiple boundaries into the same mirror mesh.
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6'
[]
When a boundary mesh mirror is constructed using NekRSMesh
, the actual sidesets associated with the original mesh are lost. For instance, setting boundary = '1 2'
will construct a mesh mirror consisting of the elements on boundaries 1 and 2 in the NekRS mesh, but those boundary IDs are not preserved in the mirror. This is a limitation of libMesh, because sideset names cannot be associated with 2-D elements - only with faces of 3-D elements. However, this has not yet been a limitation in Cardinal, because we can still perform operations based on NekRS sideset IDs through the various Nek postprocessors in Cardinal. If these postprocessors do not meet your needs, you can retain NekRs sideset IDs when constructing a volume mesh; please see Volume Mesh Mirror and Volume and Boundary Mesh Mirrors for details.
Volume Mesh Mirror
In volume mode, NekRSMesh
will read the nodes associated with the entire NekRS mesh and then build an equivalent MooseMesh
. Again using the Figure 1 as an example NekRS mesh, the three different types of mesh mirrors are shown in Figure 3. White dots are shown to indicate the nodes for the first two mesh mirrors (too many nodes would clutter the image if we showed the nodes for the exact mesh mirror as well).

Figure 3: Three different mesh mirrors for the entire volume of the NekRS mesh from Figure 1
First-order mesh mirrors are selected with
order = FIRST
, giving the first mesh mirror in Figure 3. NekRS's elements are converted to HEX8. That is, if NekRS uses a polynomial order of 7, data transfers between the mesh mirror and NekRS's mesh would involve interpolations on each element between (7+1)3 NekRS quadrature points and 8 MOOSE nodes.Second-order mesh mirrors are selected with
order = SECOND
, giving the second mesh mirror in Figure 3. NekRS's elements are converted to HEX27. That is, if NekRS uses a polynomial order of 7, data transfers between the mesh mirror and NekRS's mesh would involve interpolations on each element between (7+1)3 NekRS quadrature points and 27 MOOSE nodes.An "exact" mesh mirror is selected with
exact = true
, giving the third mesh mirror in Figure 3. For each NekRS element, we build N3 HEX8 elements.
If creating a mesh mirror in volume mode, the sideset IDs from the NekRS mesh will be constructed in the mesh mirror.
Volume and Boundary Mesh Mirrors
Combined volume and boundary mesh mirrors are used for:
Combined CHT and volume coupling of NekRS to MOOSE
Combining the volume and boundary modes is achieved by setting both volume = true
and specifying the CHT boundaries with the boundary
parameter. The resulting volume mesh mirror will contain all the sidesets of the NekRS mesh (because as described in Volume Mesh Mirror , all sidesets are automatically created in volume mesh mirrors), and also set up necessary mapping data structures to facilitate CHT to the NekRS boundaries specified with the boundary
parameter.
For instance, the following code snippet will generate a second-order volume mesh and sideset 2 will be coupled via CHT to MOOSE.
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
boundary = '2'
[]
Other Features
When NekRS is run in non-dimensional form, the .re2
mesh will also be in non-dimensional units. In this case, to ensure that the mesh mirror that handles data transfers to/from dimensional coupled MOOSE applications (such as BISON) can correctly map the data in space, a scaling
factor must be applied to the mesh mirror.
For example, consider a hypothetical case where NekRS solves for flow in a domain of size 5 m × 5 m. Suppose that the characteristic length is taken as Lref=5 m; in this case, the mesh in the .re2
file should be of size 1×1 to properly set up the nondimensional formulation. When the mesh mirror is constructed, if no adjustments are made, the mesh mirror will extend over a range of 1×1 - but will be coupled to a MOOSE application that probably selects a length scale as meters - not a nondimensional scale. So, to convert the mesh mirror back to dimensional units, the scaling
parameter is used. For this example, if the coupled MOOSE application solves in units of meters, then scaling
should be set to 5 to dimensionalize the non-dimensional NekRS mesh. Generally, scaling
should be set to the same value used to "scale" the mesh when using the exo2nek
program.
Input Parameters
- alpha_rotationThe number of degrees that the domain should be alpha-rotated using the Euler angle ZXZ convention from https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix in order to align with a canonical physical space of your choosing.
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:The number of degrees that the domain should be alpha-rotated using the Euler angle ZXZ convention from https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix in order to align with a canonical physical space of your choosing.
- beta_rotationThe number of degrees that the domain should be beta-rotated using the Euler angle ZXZ convention from https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix in order to align with a canonical physical space of your choosing.
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:The number of degrees that the domain should be beta-rotated using the Euler angle ZXZ convention from https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix in order to align with a canonical physical space of your choosing.
- gamma_rotationThe number of degrees that the domain should be gamma-rotated using the Euler angle ZXZ convention from https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix in order to align with a canonical physical space of your choosing.
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:The number of degrees that the domain should be gamma-rotated using the Euler angle ZXZ convention from https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix in order to align with a canonical physical space of your choosing.
- length_unitHow much distance one mesh length unit represents, e.g. 1 cm, 1 nm, 1 ft, 5inches
C++ Type:std::string
Unit:(no unit assumed)
Controllable:No
Description:How much distance one mesh length unit represents, e.g. 1 cm, 1 nm, 1 ft, 5inches
- up_directionSpecify what axis corresponds to the up direction in physical space (the opposite of the gravity vector if you will). If this parameter is provided, we will perform a single 90 degree rotation of the domain--if the provided axis is 'x' or 'z', we will not rotate if the axis is 'y'--such that a point which was on the provided axis will now lie on the y-axis, e.g. the y-axis is our canonical up direction. If you want finer grained control than this, please use the 'alpha_rotation', 'beta_rotation', and 'gamma_rotation' parameters.
C++ Type:MooseEnum
Unit:(no unit assumed)
Options:X, Y, Z
Controllable:No
Description:Specify what axis corresponds to the up direction in physical space (the opposite of the gravity vector if you will). If this parameter is provided, we will perform a single 90 degree rotation of the domain--if the provided axis is 'x' or 'z', we will not rotate if the axis is 'y'--such that a point which was on the provided axis will now lie on the y-axis, e.g. the y-axis is our canonical up direction. If you want finer grained control than this, please use the 'alpha_rotation', 'beta_rotation', and 'gamma_rotation' parameters.
Transformations Relative To Parent Application Frame Of Reference Parameters
- coord_typeXYZType of the coordinate system per block param
Default:XYZ
C++ Type:MultiMooseEnum
Unit:(no unit assumed)
Options:XYZ, RZ, RSPHERICAL
Controllable:No
Description:Type of the coordinate system per block param
- rz_coord_axisYThe rotation axis (X | Y) for axisymmetric coordinates
Default:Y
C++ Type:MooseEnum
Unit:(no unit assumed)
Options:X, Y
Controllable:No
Description:The rotation axis (X | Y) for axisymmetric coordinates
- rz_coord_blocksBlocks using general axisymmetric coordinate systems
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:Blocks using general axisymmetric coordinate systems
- rz_coord_directionsAxis directions for each block in 'rz_coord_blocks'
C++ Type:std::vector<libMesh::VectorValue<double>>
Unit:(no unit assumed)
Controllable:No
Description:Axis directions for each block in 'rz_coord_blocks'
- rz_coord_originsAxis origin points for each block in 'rz_coord_blocks'
C++ Type:std::vector<libMesh::Point>
Unit:(no unit assumed)
Controllable:No
Description:Axis origin points for each block in 'rz_coord_blocks'
Coordinate System Parameters
- centroid_partitioner_directionSpecifies the sort direction if using the centroid partitioner. Available options: x, y, z, radial
C++ Type:MooseEnum
Unit:(no unit assumed)
Options:x, y, z, radial
Controllable:No
Description:Specifies the sort direction if using the centroid partitioner. Available options: x, y, z, radial
- partitionerdefaultSpecifies a mesh partitioner to use when splitting the mesh for a parallel computation.
Default:default
C++ Type:MooseEnum
Unit:(no unit assumed)
Options:default, metis, parmetis, linear, centroid, hilbert_sfc, morton_sfc
Controllable:No
Description:Specifies a mesh partitioner to use when splitting the mesh for a parallel computation.
Partitioning Parameters
- construct_node_list_from_side_listTrueWhether or not to generate nodesets from the sidesets (usually a good idea).
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether or not to generate nodesets from the sidesets (usually a good idea).
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- dim1This is only required for certain mesh formats where the dimension of the mesh cannot be autodetected. In particular you must supply this for GMSH meshes. Note: This is completely ignored for ExodusII meshes!
Default:1
C++ Type:MooseEnum
Unit:(no unit assumed)
Options:1, 2, 3
Controllable:No
Description:This is only required for certain mesh formats where the dimension of the mesh cannot be autodetected. In particular you must supply this for GMSH meshes. Note: This is completely ignored for ExodusII meshes!
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set the enabled status of the MooseObject.
- nemesisFalseIf nemesis=true and file=foo.e, actually reads foo.e.N.0, foo.e.N.1, ... foo.e.N.N-1, where N = # CPUs, with NemesisIO.
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:If nemesis=true and file=foo.e, actually reads foo.e.N.0, foo.e.N.1, ... foo.e.N.N-1, where N = # CPUs, with NemesisIO.
- patch_size40The number of nodes to consider in the NearestNode neighborhood.
Default:40
C++ Type:unsigned int
Unit:(no unit assumed)
Controllable:No
Description:The number of nodes to consider in the NearestNode neighborhood.
- patch_update_strategyneverHow often to update the geometric search 'patch'. The default is to never update it (which is the most efficient but could be a problem with lots of relative motion). 'always' will update the patch for all secondary nodes at the beginning of every timestep which might be time consuming. 'auto' will attempt to determine at the start of which timesteps the patch for all secondary nodes needs to be updated automatically.'iteration' updates the patch at every nonlinear iteration for a subset of secondary nodes for which penetration is not detected. If there can be substantial relative motion between the primary and secondary surfaces during the nonlinear iterations within a timestep, it is advisable to use 'iteration' option to ensure accurate contact detection.
Default:never
C++ Type:MooseEnum
Unit:(no unit assumed)
Options:never, always, auto, iteration
Controllable:No
Description:How often to update the geometric search 'patch'. The default is to never update it (which is the most efficient but could be a problem with lots of relative motion). 'always' will update the patch for all secondary nodes at the beginning of every timestep which might be time consuming. 'auto' will attempt to determine at the start of which timesteps the patch for all secondary nodes needs to be updated automatically.'iteration' updates the patch at every nonlinear iteration for a subset of secondary nodes for which penetration is not detected. If there can be substantial relative motion between the primary and secondary surfaces during the nonlinear iterations within a timestep, it is advisable to use 'iteration' option to ensure accurate contact detection.
Advanced Parameters
Input Files
- (test/tests/userobjects/layered_layered/nek.i)
- (test/tests/nek_separatedomain/invalid_params/nek.i)
- (test/tests/nek_mesh/second_order/nek.i)
- (test/tests/userobjects/subchannel_layered/1d.i)
- (tutorials/sfr_7pin/nek_vpp.i)
- (tutorials/nek_stochastic/nek.i)
- (test/tests/userobjects/subchannel_layered/nek.i)
- (test/tests/userobjects/volume/nondimensional/nek.i)
- (test/tests/cht/nondimensional/nek.i)
- (test/tests/nek_errors/invalid_settings/executioner.i)
- (test/tests/userobjects/hexagonal_gap_layered/nek_axial.i)
- (test/tests/nek_warnings/unused_boundary/nek.i)
- (test/tests/conduction/nonidentical_volume/cylinder/nek.i)
- (test/tests/nek_standalone/start_time/force_start.i)
- (test/tests/userobjects/hexagonal_gap_layered/nek.i)
- (test/tests/nek_stochastic/errors/min_gap.i)
- (tutorials/other_apps/cardinal_master.i)
- (test/tests/postprocessors/nek_pressure_surface_force/nek_nondimensional.i)
- (test/tests/userobjects/subchannel_layered/pin_1d.i)
- (tutorials/fhr_reflector/conduction/nek.i)
- (test/tests/cht/sfr_pincell/nek.i)
- (test/tests/postprocessors/nek_side_integral/nek.i)
- (test/tests/deformation/simple-cube/nek.i)
- (test/tests/userobjects/hexagonal_gap_layered/user_component.i)
- (test/tests/nek_errors/invalid_settings/boundary_id.i)
- (tutorials/gas_compact_multiphysics/nek.i)
- (test/tests/nek_stochastic/shift/nek.i)
- (test/tests/nek_stochastic/errors/nek_error.i)
- (test/tests/userobjects/subchannel_layered/order_error.i)
- (test/tests/postprocessors/nek_volume_extrema/nek.i)
- (test/tests/userobjects/sideset_layered/side_average.i)
- (test/tests/userobjects/layered_layered/1d.i)
- (test/tests/nek_errors/invalid_settings/problem_mesh.i)
- (test/tests/cht/pebble/shift/nek.i)
- (test/tests/postprocessors/nek_heat_flux_integral/nek.i)
- (test/tests/nek_errors/invalid_scalar/nek_uo.i)
- (test/tests/conduction/nonidentical_interface/cylinders/nek_exact.i)
- (test/tests/nek_standalone/ethier/nek.i)
- (test/tests/userobjects/sideset_layered/invalid_boundary.i)
- (test/tests/conduction/identical_volume/cube/nek.i)
- (test/tests/nek_temp/exact/exact_volume.i)
- (test/tests/nek_file_output/nek_as_master/nek.i)
- (test/tests/conduction/nonidentical_volume/cylinder/nek_exact.i)
- (test/tests/userobjects/volume/dimensional/nek.i)
- (test/tests/nek_errors/deformation/user/nek.i)
- (test/tests/conduction/identical_interface/cube/nek.i)
- (test/tests/nek_stochastic/quiet_init/nek_multi.i)
- (test/tests/conduction/zero_flux/mismatch_nek.i)
- (test/tests/postprocessors/dimensionless_numbers/dimensional/nek.i)
- (test/tests/nek_file_output/nek_as_sub/nek.i)
- (test/tests/nek_errors/insufficient_scratch/standalone/nek_standalone.i)
- (test/tests/nek_file_output/nek_as_master_even/nek.i)
- (test/tests/conduction/zero_flux/nek_vpp.i)
- (test/tests/postprocessors/nek_side_extrema/nek.i)
- (test/tests/userobjects/sideset_layered/z_bins.i)
- (test/tests/userobjects/interval/nek.i)
- (test/tests/nek_stochastic/nek_multi.i)
- (test/tests/nek_errors/invalid_scalar/nek.i)
- (test/tests/nek_errors/invalid_field/nek.i)
- (tutorials/load_from_exodus/nek.i)
- (test/tests/conduction/boundary_and_volume/prism/nek.i)
- (test/tests/nek_errors/insufficient_scratch/nek.i)
- (test/tests/auxkernels/nek_spatial_bin_component_aux/invalid_field.i)
- (test/tests/nek_temp/first_order/nek.i)
- (test/tests/multiple_nek_apps/subdirectory/nek.i)
- (test/tests/nek_stochastic/device/nek_multi.i)
- (test/tests/postprocessors/nek_side_average/nek.i)
- (test/tests/deformation/nek_standalone/nek_boundary.i)
- (test/tests/nek_separatedomain/transfers_temperature/nek.i)
- (test/tests/postprocessors/nek_point_value/points_nondimensional.i)
- (test/tests/userobjects/hexagonal_gap_layered/normals/nek.i)
- (tutorials/msfr/nek.i)
- (test/tests/nek_errors/no_temp_var/nek.i)
- (test/tests/nek_temp/first_order/nek_volume.i)
- (test/tests/postprocessors/nek_weighted_side_average/nek.i)
- (test/tests/postprocessors/nek_side_extrema/nek_p.i)
- (test/tests/cht/nondimensional/nek_exact.i)
- (test/tests/conduction/identical_interface/pyramid/nek.i)
- (tutorials/sfr_7pin/nek.i)
- (test/tests/userobjects/gap/dimensional/nek.i)
- (tutorials/pebble_67/nek.i)
- (test/tests/postprocessors/nek_usrwrk_boundary_integral/nek.i)
- (test/tests/userobjects/subchannel_layered/wrong_type.i)
- (test/tests/userobjects/hexagonal_gap_layered/type_error.i)
- (test/tests/nek_errors/invalid_settings/nek_bc.i)
- (test/tests/sockeye_coupling/sockeye_sub/nek.i)
- (test/tests/nek_mesh/first_order/nek_volume.i)
- (test/tests/conduction/nonidentical_volume/nondimensional/nek.i)
- (test/tests/nek_errors/used_scratch/nek.i)
- (test/tests/userobjects/interval/nek_synchronization.i)
- (test/tests/nek_file_output/nek_as_sub_even/nek.i)
- (test/tests/postprocessors/dimensionless_numbers/dimensional/ranks.i)
- (test/tests/nek_file_output/usrwrk/nek.i)
- (test/tests/conduction/nonidentical_interface/cylinders/nek_mini.i)
- (test/tests/conduction/nonidentical_interface/cylinders/nek.i)
- (test/tests/postprocessors/nek_viscous_surface_force/nek.i)
- (test/tests/nek_errors/invalid_field/nek_no_temp.i)
- (test/tests/postprocessors/nek_pressure_surface_force/nek.i)
- (test/tests/nek_temp/second_order/nek_volume.i)
- (test/tests/userobjects/side/nondimensional/nek.i)
- (test/tests/postprocessors/nek_point_value/points.i)
- (test/tests/userobjects/layered_layered/3d.i)
- (test/tests/deformation/vol-areas/nek.i)
- (test/tests/nek_standalone/from_restart/nek.i)
- (test/tests/nek_standalone/adaptive_dt/nek_nondim.i)
- (test/tests/nek_standalone/lowMach/nek.i)
- (test/tests/nek_errors/invalid_bid_postprocessor/nek.i)
- (test/tests/nek_errors/invalid_transfer_pp/nek.i)
- (test/tests/userobjects/hexagonal_gap_layered/normals/nek_axial.i)
- (test/tests/postprocessors/dimensionless_numbers/nondimensional/nek.i)
- (doc/content/source/problems/smallest_input.i)
- (tutorials/subchannel/nek.i)
- (tutorials/other_apps/cardinal_sub.i)
- (test/tests/userobjects/subchannel_layered/user_component.i)
- (test/tests/userobjects/subchannel_layered/type_error.i)
- (test/tests/userobjects/radial_layered/1d.i)
- (test/tests/nek_mesh/sidesets/cube/nek_volume.i)
- (test/tests/deformation/mesh-velocity-areas/nek.i)
- (test/tests/nek_stochastic/errors/gap.i)
- (test/tests/conduction/zero_flux/nek_disjoint.i)
- (test/tests/nek_errors/invalid_field/nonlinear.i)
- (test/tests/nek_standalone/conj_ht/nek.i)
- (test/tests/nek_standalone/ktauChannel/nek.i)
- (test/tests/nek_errors/invalid_settings/timestepper.i)
- (test/tests/nek_mesh/first_order/nek.i)
- (test/tests/conduction/boundary_and_volume/prism/nek_exact.i)
- (test/tests/multiple_nek_apps/two_channels/nek.i)
- (test/tests/nek_mesh/exact/exact_volume.i)
- (test/tests/nek_errors/insufficient_scratch/nek_mesh.i)
- (test/tests/cht/multi_cht/nek.i)
- (test/tests/userobjects/gap/nondimensional/nek.i)
- (test/tests/deformation/nek_standalone/nek.i)
- (test/tests/nek_errors/insufficient_scratch/nek_separate_domain.i)
- (tutorials/fhr_reflector/cht/nek.i)
- (test/tests/postprocessors/nek_volume_integral/nek.i)
- (test/tests/nek_standalone/channel/nek.i)
- (test/tests/userobjects/radial_layered/2d.i)
- (test/tests/nek_output/nek.i)
- (tutorials/restart_nek_and_moose/read_from_checkpoints/nek.i)
- (test/tests/nek_standalone/adaptive_dt/nek.i)
- (test/tests/userobjects/layered_layered/duplicate_directions.i)
- (test/tests/nek_errors/invalid_settings/separate_boundary.i)
- (test/tests/postprocessors/nek_volume_average/nek.i)
- (test/tests/nek_stochastic/read/read.i)
- (test/tests/nek_mesh/sidesets/pyramid/nek_volume.i)
- (test/tests/nek_mesh/second_order/nek_volume.i)
- (tutorials/gas_compact_cht/nek.i)
- (test/tests/nek_errors/deformation/nek.i)
- (test/tests/nek_errors/invalid_field/auxvar.i)
- (test/tests/userobjects/nek_scalar_value/nek.i)
- (test/tests/nek_mesh/sidesets/pyramid/exact_volume.i)
- (test/tests/nek_output/nek_fld.i)
- (test/tests/cht/pincell_p_v/nek.i)
- (test/tests/cht/sfr_pincell/nek_vpp.i)
- (test/tests/nek_warnings/no_temp_solve/nek.i)
- (test/tests/nek_stochastic/errors/nek_standalone_error.i)
- (tutorials/standalone/nek.i)
- (tutorials/restart_nek_and_moose/create_checkpoints/nek.i)
- (test/tests/nek_errors/mpi_setup_multiple_inputs/nek.i)
- (test/tests/nek_temp/second_order/nek.i)
- (test/tests/userobjects/sideset_layered/z_bins_by_centroid.i)
- (test/tests/postprocessors/nek_weighted_side_integral/nek.i)
- (test/tests/nek_errors/invalid_field/nek_uo.i)
- (test/tests/griffin_coupling/nek.i)
- (test/tests/conduction/zero_flux/nek.i)
- (test/tests/cht/pebble/nek.i)
- (tutorials/pebble_cht/nek.i)
- (test/tests/nek_temp/exact/exact.i)
- (test/tests/userobjects/subchannel_layered/duplicate_directions.i)
- (test/tests/userobjects/side/dimensional/nek.i)
- (test/tests/nek_mesh/exact/exact.i)
- (test/tests/nek_errors/no_occa_source_kernel/nek.i)
- (test/tests/nek_standalone/lowMach/nek_boundary.i)
- (test/tests/nek_mesh/sidesets/cube/exact_volume.i)
- (tutorials/pincell_multiphysics/nek.i)
- (test/tests/nek_file_output/avg_plugin/nek.i)
- (test/tests/userobjects/nek_scalar_value/nek_standalone.i)
(test/tests/postprocessors/nek_weighted_side_integral/nek.i)
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[weighted_T_side1]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '1'
[]
[weighted_T_side2]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '2'
[]
[weighted_T_side3]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '3'
[]
[weighted_T_side4]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '4'
[]
[weighted_T_side5]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '5'
[]
[weighted_T_side6]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '6'
[]
[]
(test/tests/userobjects/layered_layered/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
nondimensional = true
L_ref = 2.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 2.0
[]
[AuxVariables]
[bin_volumes]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[total_volume]
family = MONOMIAL
order = CONSTANT
[]
[total_average_p]
family = MONOMIAL
order = CONSTANT
[]
# just for visualization of the binning
[x_bins]
family = MONOMIAL
order = CONSTANT
[]
[y_bins]
family = MONOMIAL
order = CONSTANT
[]
[z_bins]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
# just for visualization of the binning
[x_bins]
type = SpatialUserObjectAux
variable = x_bins
user_object = x_bins
execute_on = INITIAL
[]
[y_bins]
type = SpatialUserObjectAux
variable = y_bins
user_object = y_bins
execute_on = INITIAL
[]
[z_bins]
type = SpatialUserObjectAux
variable = z_bins
user_object = z_bins
execute_on = INITIAL
[]
[bin_volumes]
type = SpatialUserObjectAux
variable = bin_volumes
user_object = vol_integral
execute_on = 'INITIAL TIMESTEP_END'
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
execute_on = 'INITIAL TIMESTEP_END'
[]
[total_volume]
type = SpatialUserObjectAux
variable = total_volume
user_object = reference_vol_integral
execute_on = 'INITIAL TIMESTEP_END'
[]
[total_average_p]
type = SpatialUserObjectAux
variable = total_average_p
user_object = reference_pressure_avg
execute_on = 'INITIAL TIMESTEP_END'
[]
[]
[UserObjects]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
[y_bins]
type = LayeredBin
direction = y
num_layers = 3
[]
[z_bins]
type = LayeredBin
direction = z
num_layers = 12
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'x_bins y_bins z_bins'
field = unity
[]
[avg_p]
type = NekBinnedVolumeAverage
bins = 'x_bins y_bins z_bins'
field = pressure
[]
[one_bin]
type = LayeredBin
direction = z
num_layers = 1
[]
[reference_vol_integral]
type = NekBinnedVolumeIntegral
bins = 'one_bin'
field = unity
[]
[reference_pressure_avg]
type = NekBinnedVolumeAverage
bins = 'one_bin'
field = pressure
[]
[]
[Postprocessors]
# we compare the integral (with a single bin) with an already-verified postprocessor
# to make sure the actual internals of the binned volume integral are done correctly
[volume_ref] # should match the value in 'total_volume' (computed with 1 bin)
type = NekVolumeIntegral
field = unity
[]
[avg_p_ref] # should match the value in 'total_average_p' (computed with 1 bin)
type = NekVolumeAverage
field = pressure
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_separatedomain/invalid_params/nek.i)
[Problem]
type = NekRSSeparateDomainProblem
coupling_type = 'inlet'
inlet_boundary = '1'
outlet_boundary = '2'
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = 1
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_mesh/second_order/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = SECOND
boundary = '1 2 3 4'
[]
# only here to avoid a re-gold
[Variables]
[dummy]
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
hide = 'flux_integral temp avg_flux'
[]
# The points provided to these postprocessors are the centroids of the elements that
# we wish to print the node coordinates for.
[Postprocessors]
[num_elems]
type = NekMeshInfoPostprocessor
test_type = num_elems
[]
[num_nodes]
type = NekMeshInfoPostprocessor
test_type = num_nodes
[]
# coordinates of nodes of element 0
[elem0_node0_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 0
test_type = node_x
[]
[elem0_node0_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 0
test_type = node_y
[]
[elem0_node0_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 0
test_type = node_z
[]
[elem0_node1_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 1
test_type = node_x
[]
[elem0_node1_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 1
test_type = node_y
[]
[elem0_node1_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 1
test_type = node_z
[]
[elem0_node2_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 2
test_type = node_x
[]
[elem0_node2_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 2
test_type = node_y
[]
[elem0_node2_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 2
test_type = node_z
[]
[elem0_node3_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 3
test_type = node_x
[]
[elem0_node3_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 3
test_type = node_y
[]
[elem0_node3_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 3
test_type = node_z
[]
[elem0_node4_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 4
test_type = node_x
[]
[elem0_node4_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 4
test_type = node_y
[]
[elem0_node4_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 4
test_type = node_z
[]
[elem0_node5_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 5
test_type = node_x
[]
[elem0_node5_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 5
test_type = node_y
[]
[elem0_node5_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 5
test_type = node_z
[]
[elem0_node6_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 6
test_type = node_x
[]
[elem0_node6_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 6
test_type = node_y
[]
[elem0_node6_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 6
test_type = node_z
[]
[elem0_node7_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 7
test_type = node_x
[]
[elem0_node7_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 7
test_type = node_y
[]
[elem0_node7_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 7
test_type = node_z
[]
[elem0_node8_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 8
test_type = node_x
[]
[elem0_node8_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 8
test_type = node_y
[]
[elem0_node8_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 8
test_type = node_z
[]
# coordinates of nodes of element 24
[elem24_node0_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 0
test_type = node_x
[]
[elem24_node0_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 0
test_type = node_y
[]
[elem24_node0_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 0
test_type = node_z
[]
[elem24_node1_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 1
test_type = node_x
[]
[elem24_node1_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 1
test_type = node_y
[]
[elem24_node1_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 1
test_type = node_z
[]
[elem24_node2_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 2
test_type = node_x
[]
[elem24_node2_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 2
test_type = node_y
[]
[elem24_node2_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 2
test_type = node_z
[]
[elem24_node3_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 3
test_type = node_x
[]
[elem24_node3_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 3
test_type = node_y
[]
[elem24_node3_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 3
test_type = node_z
[]
[elem24_node4_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 4
test_type = node_x
[]
[elem24_node4_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 4
test_type = node_y
[]
[elem24_node4_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 4
test_type = node_z
[]
[elem24_node5_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 5
test_type = node_x
[]
[elem24_node5_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 5
test_type = node_y
[]
[elem24_node5_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 5
test_type = node_z
[]
[elem24_node6_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 6
test_type = node_x
[]
[elem24_node6_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 6
test_type = node_y
[]
[elem24_node6_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 6
test_type = node_z
[]
[elem24_node7_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 7
test_type = node_x
[]
[elem24_node7_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 7
test_type = node_y
[]
[elem24_node7_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 7
test_type = node_z
[]
[elem24_node8_x]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 8
test_type = node_x
[]
[elem24_node8_y]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 8
test_type = node_y
[]
[elem24_node8_z]
type = NekMeshInfoPostprocessor
point = '0.230318929 -0.0598418287 0.365828589'
node = 8
test_type = node_z
[]
# coordinates of nodes of element 147
[elem147_node0_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 0
test_type = node_x
[]
[elem147_node0_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 0
test_type = node_y
[]
[elem147_node0_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 0
test_type = node_z
[]
[elem147_node1_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 1
test_type = node_x
[]
[elem147_node1_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 1
test_type = node_y
[]
[elem147_node1_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 1
test_type = node_z
[]
[elem147_node2_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 2
test_type = node_x
[]
[elem147_node2_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 2
test_type = node_y
[]
[elem147_node2_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 2
test_type = node_z
[]
[elem147_node3_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 3
test_type = node_x
[]
[elem147_node3_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 3
test_type = node_y
[]
[elem147_node3_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 3
test_type = node_z
[]
[elem147_node4_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 4
test_type = node_x
[]
[elem147_node4_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 4
test_type = node_y
[]
[elem147_node4_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 4
test_type = node_z
[]
[elem147_node5_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 5
test_type = node_x
[]
[elem147_node5_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 5
test_type = node_y
[]
[elem147_node5_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 5
test_type = node_z
[]
[elem147_node6_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 6
test_type = node_x
[]
[elem147_node6_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 6
test_type = node_y
[]
[elem147_node6_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 6
test_type = node_z
[]
[elem147_node7_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 7
test_type = node_x
[]
[elem147_node7_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 7
test_type = node_y
[]
[elem147_node7_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 7
test_type = node_z
[]
[elem147_node8_x]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 8
test_type = node_x
[]
[elem147_node8_y]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 8
test_type = node_y
[]
[elem147_node8_z]
type = NekMeshInfoPostprocessor
point = '-0.14039954 0.31434312 -0.456323104'
node = 8
test_type = node_z
[]
[]
(test/tests/userobjects/subchannel_layered/1d.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[uo]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo]
type = SpatialUserObjectAux
variable = uo
user_object = vol_avg
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning'
field = temperature
[]
[]
[VectorPostprocessors]
# from_uo gives exactly the same results as manually specifying the points in 'manually_provided',
# but without the headache of figuring out what all the centroids of the subchannels are
[from_uo]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_avg
[]
[manually_provided]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_avg
points = ' 0 0.00517635 0
-0.00448285 0.00258817 0
-0.00448285 -0.00258817 0
0 -0.00517635 0
0.00448285 -0.00258817 0
0.00448285 0.00258817 0
0 0.010342 0
-0.00895648 0.00517102 0
-0.00895648 -0.00517102 0
0 -0.010342 0
0.00895648 -0.00517102 0
0.00895648 0.00517102 0
0.00634302 0.0109864 0
-0.00634302 0.0109864 0
-0.01268600 0 0
-0.00634302 -0.0109864 0
0.00634302 -0.0109864 0
0.01268600 0 0'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
execute_on = 'final'
[]
(tutorials/sfr_7pin/nek_vpp.i)
[Mesh]
type = NekRSMesh
boundary = '1 2'
[]
[Problem]
type = NekRSProblem
casename = 'sfr_7pin'
conserve_flux_by_sideset = true
synchronization_interval = parent_app
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
[Postprocessors]
[pin_flux_in_nek]
type = NekHeatFluxIntegral
boundary = '1'
[]
[duct_flux_in_nek]
type = NekHeatFluxIntegral
boundary = '2'
[]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
(tutorials/nek_stochastic/nek.i)
[Mesh]
type = NekRSMesh
boundary = '5'
[]
[Problem]
type = NekRSProblem
casename = 'channel'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[k]
type = NekScalarValue
[]
[]
[Postprocessors]
[max_temp]
type = NekVolumeExtremeValue
field = temperature
[]
[k_from_stm] # this will just print to the screen the value of k received
type = NekScalarValuePostprocessor
userobject = k
[]
[expect_max_T]
type = ParsedPostprocessor
function = '1000.0 / k_from_stm + 500.0'
pp_names = k_from_stm
[]
[]
[Outputs]
csv = true
hide = 'flux_integral'
[]
[Controls]
[stm]
type = SamplerReceiver
[]
[]
(test/tests/userobjects/subchannel_layered/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[subchannel_bins]
family = MONOMIAL
order = CONSTANT
[]
[axial_bins]
family = MONOMIAL
order = CONSTANT
[]
[total_volume]
family = MONOMIAL
order = CONSTANT
[]
[total_average_T]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[bins1]
type = SpatialUserObjectAux
variable = subchannel_bins
user_object = subchannel_binning
[]
[bins2]
type = SpatialUserObjectAux
variable = axial_bins
user_object = axial_binning
[]
[total_volume]
type = SpatialUserObjectAux
variable = total_volume
user_object = reference_vol_integral
execute_on = 'INITIAL TIMESTEP_END'
[]
[total_average_T]
type = SpatialUserObjectAux
variable = total_average_T
user_object = reference_T_avg
execute_on = 'INITIAL TIMESTEP_END'
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = unity
[]
[one_bin]
type = LayeredBin
direction = z
num_layers = 1
[]
[reference_vol_integral]
type = NekBinnedVolumeIntegral
bins = 'one_bin'
field = unity
[]
[reference_T_avg]
type = NekBinnedVolumeAverage
bins = 'one_bin'
field = temperature
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = vol_avg
to_multi_app = subchannel
variable = vol_avg
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = vol_integral
to_multi_app = subchannel
variable = vol_integral
[]
[]
[Postprocessors]
# we compare the integral (with a single bin) with an already-verified postprocessor
# to make sure the actual internals of the binned volume integral are done correctly
[volume_ref] # should match the value in 'total_volume' (computed with 1 bin)
type = NekVolumeIntegral
field = unity
[]
[avg_T_ref] # should match the value in 'total_average_T' (computed with 1 bin)
type = NekVolumeAverage
field = temperature
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
hide = 'temp'
[]
(test/tests/userobjects/volume/nondimensional/nek.i)
[Mesh]
type = NekRSMesh
volume = true
scaling = 7.646e-3
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature pressure velocity'
nondimensional = true
L_ref = 7.646e-3
T_ref = 100.0
dT_ref = 50.0
U_ref = 2.0
rho_0 = 834.5
Cp_0 = 1228.0
[]
[AuxVariables]
[avg_T]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[avg_v]
family = MONOMIAL
order = CONSTANT
[]
[integral_T]
family = MONOMIAL
order = CONSTANT
[]
[integral_p]
family = MONOMIAL
order = CONSTANT
[]
[integral_v]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[avg_T]
type = SpatialUserObjectAux
variable = avg_T
user_object = avg_T
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
[]
[avg_v]
type = SpatialUserObjectAux
variable = avg_v
user_object = avg_v
[]
[integral_T]
type = SpatialUserObjectAux
variable = integral_T
user_object = integral_T
[]
[integral_p]
type = SpatialUserObjectAux
variable = integral_p
user_object = integral_p
[]
[integral_v]
type = SpatialUserObjectAux
variable = integral_v
user_object = integral_v
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[avg_T]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[avg_p]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[avg_v]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[integral_T]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[integral_p]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[integral_v]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_T
to_multi_app = subchannel
variable = avg_T
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_p
to_multi_app = subchannel
variable = avg_p
[]
[uo3_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_v
to_multi_app = subchannel
variable = avg_v
[]
[uo4_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_T
to_multi_app = subchannel
variable = integral_T
[]
[uo5_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_p
to_multi_app = subchannel
variable = integral_p
[]
[uo6_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_v
to_multi_app = subchannel
variable = integral_v
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/cht/nondimensional/nek.i)
[Problem]
type = NekRSProblem
casename = 'sfr_pin'
# This input is run in nondimensional form to verify that all the postprocessors
# and data transfers in/out of nekRS are properly dimensionalized.
nondimensional = true
U_ref = 0.0950466
T_ref = 628.15
dT_ref = 50.0
L_ref = 0.908e-2
rho_0 = 834.5
Cp_0 = 1228.0
[]
[Mesh]
type = NekRSMesh
boundary = '1'
# nekRS runs in non-dimensional form, which means that we shrunk the mesh
# from physical units of meters to our characteristic scale of 0.908e-2 m
# (the pin pitch, arbitrarily chosen). That means that we must multiply
# the nekRS mesh by 0.908e-2 to get back in units of meters that BISON is
# running in.
scaling = 0.908e-2
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[synchronization_in]
type = Receiver
[]
# side integral
[area_1]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[pressure_1]
type = NekSideIntegral
field = pressure
boundary = '1'
[]
[temperature_1]
type = NekSideIntegral
field = temperature
boundary = '1'
[]
# side average
[avg_area_1]
type = NekSideAverage
field = unity
boundary = '1'
[]
[avg_pressure_1]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[avg_temperature_1]
type = NekSideAverage
field = temperature
boundary = '1'
[]
# volume integral
[volume]
type = NekVolumeIntegral
field = unity
[]
[pressure_vol]
type = NekVolumeIntegral
field = pressure
[]
[temperature_vol]
type = NekVolumeIntegral
field = temperature
[]
# volume average
[avg_volume]
type = NekVolumeAverage
field = unity
[]
[avg_pressure_vol]
type = NekVolumeAverage
field = pressure
[]
[avg_temperature_vol]
type = NekVolumeAverage
field = temperature
[]
# heat flux integral
[nek_flux]
type = NekHeatFluxIntegral
boundary = '1'
[]
# mass flux weighted integral
[inlet_mdot]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '3'
execute_on = initial
[]
[outlet_T]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '4'
[]
[inlet_P]
type = NekMassFluxWeightedSideIntegral
field = pressure
boundary = '4'
[]
# mass flux weighted integral
[inlet_mdot_avg]
type = NekMassFluxWeightedSideAverage
field = unity
boundary = '3'
execute_on = initial
[]
[outlet_T_avg]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '4'
[]
[inlet_P_avg]
type = NekMassFluxWeightedSideAverage
field = pressure
boundary = '4'
[]
# extreme value postprocessors - VOLUME
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[max_p]
type = NekVolumeExtremeValue
field = pressure
value_type = max
[]
[min_p]
type = NekVolumeExtremeValue
field = pressure
value_type = min
[]
[max_1]
type = NekVolumeExtremeValue
field = unity
value_type = max
[]
[min_1]
type = NekVolumeExtremeValue
field = unity
value_type = min
[]
# extreme value postprocessors - SIDE
[max_T_out]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = max
[]
[min_T_out]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = min
[]
[max_p_in]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = max
[]
[min_p_in]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = min
[]
[max_1_in]
type = NekSideExtremeValue
field = unity
boundary = '3'
value_type = max
[]
[min_1_in]
type = NekSideExtremeValue
field = unity
boundary = '3'
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[screen]
type = Console
hide = 'synchronization_in'
[]
[]
(test/tests/nek_errors/invalid_settings/executioner.i)
[Mesh]
type = NekRSMesh
boundary = '3'
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Steady
[]
(test/tests/userobjects/hexagonal_gap_layered/nek_axial.i)
gap_thickness = ${fparse 0.1 * 7.646e-3}
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'pressure'
[]
[AuxVariables]
[gap_bins]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[gap_bins]
type = SpatialUserObjectAux
variable = gap_bins
user_object = subchannel_binning
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = gap_avg
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredGapBin
direction = z
num_layers = 6
[]
[gap_avg]
type = NekBinnedPlaneAverage
bins = 'subchannel_binning axial_binning'
field = pressure
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[gap_area]
type = NekBinnedPlaneIntegral
bins = 'subchannel_binning axial_binning'
field = unity
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel_axial.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = gap_avg
to_multi_app = subchannel
variable = gap_avg
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = gap_area
to_multi_app = subchannel
variable = gap_area
[]
[temp_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
variable = P
source_variable = P
search_value_conflicts = false
[]
[]
[VectorPostprocessors]
[avg_p]
type = SpatialUserObjectVectorPostprocessor
userobject = gap_avg
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
[]
(test/tests/nek_warnings/unused_boundary/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/conduction/nonidentical_volume/cylinder/nek.i)
[Problem]
type = NekRSProblem
casename = 'cylinder'
[]
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[avg_T_volume]
type = NekVolumeAverage
field = temperature
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/nek_standalone/start_time/force_start.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
start_time = 1.0
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
[]
[]
[Postprocessors]
[time]
type = TimePostprocessor
execute_on = 'initial timestep_begin'
[]
[]
(test/tests/userobjects/hexagonal_gap_layered/nek.i)
gap_thickness = ${fparse 0.05 * 7.646e-3}
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[gap_bins]
family = MONOMIAL
order = CONSTANT
[]
[avg_temp]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[gap_bins]
type = SpatialUserObjectAux
variable = gap_bins
user_object = subchannel_binning
[]
[avg_temp]
type = SpatialUserObjectAux
variable = avg_temp
user_object = gap_avg
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelGapBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[gap_avg]
type = NekBinnedPlaneAverage
bins = 'subchannel_binning axial_binning'
field = temperature
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[gap_area]
type = NekBinnedPlaneIntegral
bins = 'subchannel_binning axial_binning'
field = unity
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = gap_avg
to_multi_app = subchannel
variable = gap_avg
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = gap_area
to_multi_app = subchannel
variable = gap_area
[]
[temp_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
variable = temp
source_variable = temp
search_value_conflicts = false
[]
[]
[VectorPostprocessors]
[avg_temp]
type = SpatialUserObjectVectorPostprocessor
userobject = gap_avg
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
[]
(test/tests/nek_stochastic/errors/min_gap.i)
[Mesh]
type = NekRSMesh
boundary = '1'
volume = true
[]
[Problem]
type = NekRSProblem
n_usrwrk_slots = 4
casename = 'ethier'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
usrwrk_slot = 3
[]
[]
(tutorials/other_apps/cardinal_master.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'turbPipe'
[]
[MultiApps]
[sub]
type = TransientMultiApp
app_type = ChickadeeApp
input_files = chickadee_sub.i
execute_on = timestep_end
# change this for wherever you have Chickadee located
library_path = '/home/anovak/Chickadee/lib'
[]
[]
[Transfers]
# fill this out with whatever data transfers you want to/from Chickadee
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/postprocessors/nek_pressure_surface_force/nek_nondimensional.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
nondimensional = true
L_ref = 0.5
U_ref = 0.9
rho_0 = 0.8
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 0.5
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[pressure_x]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'x'
mesh = 'fluid'
[]
[pressure_y]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'y'
mesh = 'fluid'
[]
[pressure_z]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'z'
mesh = 'fluid'
[]
# These are added to compare by hand
[pressure_x_3]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '3'
[]
[pressure_x_4]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '4'
[]
[pressure_x_comp]
type = DifferencePostprocessor
value1 = pressure_x_3
value2 = pressure_x_4
[]
[pressure_y_1]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '1'
[]
[pressure_y_2]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '2'
[]
[pressure_y_comp]
type = DifferencePostprocessor
value1 = pressure_y_1
value2 = pressure_y_2
[]
[pressure_z_6]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '6'
[]
[pressure_z_5]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '5'
[]
[pressure_z_comp]
type = DifferencePostprocessor
value1 = pressure_z_6
value2 = pressure_z_5
[]
[]
(test/tests/userobjects/subchannel_layered/pin_1d.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[uo]
[]
[]
[AuxKernels]
[uo]
type = SpatialUserObjectAux
variable = uo
user_object = side_avg
boundary = '1'
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
pin_centered_bins = true
[]
[side_avg]
type = NekBinnedSideAverage
bins = 'subchannel_binning'
field = temperature
boundary = '1'
# for the peripheral region, we wont actually hit anything in this zone because we evaluate
# the user object on the pin surfaces
check_zero_contributions = false
[]
[]
[VectorPostprocessors]
# from_uo gives exactly the same results as manually specifying the points in 'manually_provided',
# but without the headache of figuring out what all the centroids of the pins are
[from_uo]
type = SpatialUserObjectVectorPostprocessor
userobject = side_avg
[]
[manually_provided]
type = SpatialUserObjectVectorPostprocessor
userobject = side_avg
points = ' 0.0 0.0 0.0
0.0044828 0.0077645 0.0
-0.0044828 0.0077645 0.0
-0.0089656 0.0 0.0
-0.0044828 -0.0077645 0.0
0.0044828 -0.0077645 0.0
0.0089656 0.0 0.0
1.0 0.0 0.0' # last point is just any point outside the pin area
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
execute_on = 'final'
[]
(tutorials/fhr_reflector/conduction/nek.i)
fluid_solid_interface = '1 2 7'
[Mesh]
type = NekRSMesh
boundary = ${fluid_solid_interface}
scaling = 0.006
[]
[Problem]
type = NekRSProblem
casename = 'fluid'
nondimensional = true
U_ref = 0.0575
T_ref = 923.15
dT_ref = 10.0
L_ref = 0.006
rho_0 = 1962.13
Cp_0 = 2416.0
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
[Postprocessors]
[boundary_flux]
type = NekHeatFluxIntegral
boundary = ${fluid_solid_interface}
[]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
(test/tests/cht/sfr_pincell/nek.i)
[Problem]
type = NekRSProblem
casename = 'sfr_pin'
synchronization_interval = parent_app
# we only technically need one scratch space slot for this problem,
# so we can skip allocating extra
n_usrwrk_slots = 1
[]
[Mesh]
type = NekRSMesh
boundary = '1'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[nek_flux]
type = NekHeatFluxIntegral
boundary = '1'
[]
[average_inlet_T]
type = NekSideAverage
field = temperature
boundary = '3'
execute_on = initial
[]
[average_outlet_T]
type = NekSideAverage
field = temperature
boundary = '4'
[]
[dT]
type = DifferencePostprocessor
value1 = average_outlet_T
value2 = average_inlet_T
[]
[inlet_mdot]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '3'
execute_on = initial
[]
# postprocessors for comparing against non-dimensional version in ../nondimensional
# --> uncomment in order to get the reference values that the nondimensional boundary coupling
# was verified against
#
# # side integral
# [area_1]
# type = NekSideIntegral
# field = unity
# boundary = '1'
# []
# [pressure_1]
# type = NekSideIntegral
# field = pressure
# boundary = '1'
# []
# [temperature_1]
# type = NekSideIntegral
# field = temperature
# boundary = '1'
# []
# # side average
# [avg_area_1]
# type = NekSideAverage
# field = unity
# boundary = '1'
# []
# [avg_pressure_1]
# type = NekSideAverage
# field = pressure
# boundary = '1'
# []
# [avg_temperature_1]
# type = NekSideAverage
# field = temperature
# boundary = '1'
# []
# # volume integral
# [volume]
# type = NekVolumeIntegral
# field = unity
# []
# [pressure_vol]
# type = NekVolumeIntegral
# field = pressure
# []
# [temperature_vol]
# type = NekVolumeIntegral
# field = temperature
# []
# # volume average
# [avg_volume]
# type = NekVolumeAverage
# field = unity
# []
# [avg_pressure_vol]
# type = NekVolumeAverage
# field = pressure
# []
# [avg_temperature_vol]
# type = NekVolumeAverage
# field = temperature
# []
# # heat flux integral
# [nek_flux]
# type = NekHeatFluxIntegral
# boundary = '1'
# []
# # mass flux weighted integral
# [inlet_mdot]
# type = NekMassFluxWeightedSideIntegral
# field = unity
# boundary = '3'
# execute_on = initial
# []
# [outlet_T]
# type = NekMassFluxWeightedSideIntegral
# field = temperature
# boundary = '4'
# []
# [inlet_P]
# type = NekMassFluxWeightedSideIntegral
# field = pressure
# boundary = '4'
# []
# # mass flux weighted integral
# [inlet_mdot_avg]
# type = NekMassFluxWeightedSideAverage
# field = unity
# boundary = '3'
# execute_on = initial
# []
# [outlet_T_avg]
# type = NekMassFluxWeightedSideAverage
# field = temperature
# boundary = '4'
# []
# [inlet_P_avg]
# type = NekMassFluxWeightedSideAverage
# field = pressure
# boundary = '4'
# []
# # extreme value postprocessors - VOLUME
# [max_T]
# type = NekVolumeExtremeValue
# field = temperature
# value_type = max
# []
# [min_T]
# type = NekVolumeExtremeValue
# field = temperature
# value_type = min
# []
# [max_p]
# type = NekVolumeExtremeValue
# field = pressure
# value_type = max
# []
# [min_p]
# type = NekVolumeExtremeValue
# field = pressure
# value_type = min
# []
# [max_1]
# type = NekVolumeExtremeValue
# field = unity
# value_type = max
# []
# [min_1]
# type = NekVolumeExtremeValue
# field = unity
# value_type = min
# []
# # extreme value postprocessors - SIDE
# [max_T_out]
# type = NekSideExtremeValue
# field = temperature
# boundary = '4'
# value_type = max
# []
# [min_T_out]
# type = NekSideExtremeValue
# field = temperature
# boundary = '4'
# value_type = min
# []
# [max_p_in]
# type = NekSideExtremeValue
# field = pressure
# boundary = '3'
# value_type = max
# []
# [min_p_in]
# type = NekSideExtremeValue
# field = pressure
# boundary = '3'
# value_type = min
# []
# [max_1_in]
# type = NekSideExtremeValue
# field = unity
# boundary = '3'
# value_type = max
# []
# [min_1_in]
# type = NekSideExtremeValue
# field = unity
# boundary = '3'
# value_type = min
# []
[]
[Outputs]
exodus = true
execute_on = 'final'
csv = true
[screen]
type = Console
hide = 'average_inlet_T average_outlet_T transfer_in'
[]
[]
(test/tests/postprocessors/nek_side_integral/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[area_side1]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_side2]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_side3]
type = NekSideIntegral
field = unity
boundary = '3'
[]
[area_side4]
type = NekSideIntegral
field = unity
boundary = '4'
[]
[area_side5]
type = NekSideIntegral
field = unity
boundary = '5'
[]
[area_side6]
type = NekSideIntegral
field = unity
boundary = '6'
[]
[area_side7]
type = NekSideIntegral
field = unity
boundary = '7'
[]
[area_side8]
type = NekSideIntegral
field = unity
boundary = '8'
[]
[temp_side1]
type = NekSideIntegral
field = temperature
boundary = '1'
[]
[temp_side2]
type = NekSideIntegral
field = temperature
boundary = '2'
[]
[temp_side3]
type = NekSideIntegral
field = temperature
boundary = '3'
[]
[temp_side4]
type = NekSideIntegral
field = temperature
boundary = '4'
[]
[temp_side5]
type = NekSideIntegral
field = temperature
boundary = '5'
[]
[temp_side6]
type = NekSideIntegral
field = temperature
boundary = '6'
[]
[temp_side7]
type = NekSideIntegral
field = temperature
boundary = '7'
[]
[temp_side8]
type = NekSideIntegral
field = temperature
boundary = '8'
[]
[pressure_side1]
type = NekSideIntegral
field = pressure
boundary = '1'
[]
[pressure_side2]
type = NekSideIntegral
field = pressure
boundary = '2'
[]
[pressure_side3]
type = NekSideIntegral
field = pressure
boundary = '3'
[]
[pressure_side4]
type = NekSideIntegral
field = pressure
boundary = '4'
[]
[pressure_side5]
type = NekSideIntegral
field = pressure
boundary = '5'
[]
[pressure_side6]
type = NekSideIntegral
field = pressure
boundary = '6'
[]
[pressure_side7]
type = NekSideIntegral
field = pressure
boundary = '7'
[]
[pressure_side8]
type = NekSideIntegral
field = pressure
boundary = '8'
[]
[velocity_avg1]
type = NekSideIntegral
field = velocity
boundary = '1'
[]
[velocity_avg2]
type = NekSideIntegral
field = velocity
boundary = '2'
[]
[velocity_avg3]
type = NekSideIntegral
field = velocity
boundary = '3'
[]
[velocity_avg4]
type = NekSideIntegral
field = velocity
boundary = '4'
[]
[velocity_avg5]
type = NekSideIntegral
field = velocity
boundary = '5'
[]
[velocity_avg6]
type = NekSideIntegral
field = velocity
boundary = '6'
[]
[velocity_avg7]
type = NekSideIntegral
field = velocity
boundary = '7'
[]
[velocity_avg8]
type = NekSideIntegral
field = velocity
boundary = '8'
[]
[velocity_comp1]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '1'
[]
[velocity_comp2]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '2'
[]
[velocity_comp3]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '3'
[]
[velocity_comp4]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '4'
[]
[velocity_comp5]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '5'
[]
[velocity_comp6]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '6'
[]
[velocity_comp7]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '7'
[]
[velocity_comp8]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '8'
[]
[]
(test/tests/deformation/simple-cube/nek.i)
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
parallel_type = replicated
displacements = 'disp_x disp_y disp_z'
[]
[Problem]
type = NekRSProblem
casename = 'nekbox'
synchronization_interval = parent_app
[]
[AuxVariables]
[temp_ansol]
order = SECOND
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[integral]
type = ElementL2Difference
variable = temp
other_variable = temp_ansol
execute_on = timestep_end
[]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
execute_on = timestep_end
[]
[min_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
execute_on = timestep_end
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
# uncomment the temp_ansol to see that the solution matches very well
hide = 'source_integral transfer_in heat_source temp_ansol'
[]
(test/tests/userobjects/hexagonal_gap_layered/user_component.i)
gap_thickness = ${fparse 0.05 * 7.646e-3}
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'velocity'
[]
[AuxVariables]
[velocity_component]
[]
# These are just for visualizing the average velocity component with Glyphs in paraview;
# the result of the 'vol_avg' user object will be represented as a vector "uo_" with 3 components
[uo_x]
family = MONOMIAL
order = CONSTANT
[]
[uo_y]
family = MONOMIAL
order = CONSTANT
[]
[uo_z]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[velocity_component] # actual velocity component computed directly from interpolated nekRS velocity fields
type = ParsedAux
variable = velocity_component
expression = '(0.1*vel_x+0.2*vel_y+0.3*vel_z)/sqrt(0.1*0.1+0.2*0.2+0.3*0.3)'
coupled_variables = 'vel_x vel_y vel_z'
execute_on = 'timestep_end nonlinear linear'
[]
[uo_x]
type = NekSpatialBinComponentAux
variable = uo_x
user_object = avg_velocity_component
component = 0
[]
[uo_y]
type = NekSpatialBinComponentAux
variable = uo_y
user_object = avg_velocity_component
component = 1
[]
[uo_z]
type = NekSpatialBinComponentAux
variable = uo_z
user_object = avg_velocity_component
component = 2
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelGapBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[avg_velocity_component]
type = NekBinnedPlaneAverage
bins = 'subchannel_binning axial_binning'
field = velocity_component
velocity_component = user
velocity_direction = '0.1 0.2 0.3'
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel_b.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_velocity_component
to_multi_app = subchannel
variable = avg_velocity_component
[]
[uox_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_x
variable = uo_x
search_value_conflicts = false
[]
[uoy_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_y
variable = uo_y
search_value_conflicts = false
[]
[uoz_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_z
variable = uo_z
search_value_conflicts = false
[]
[actual_velocity_component]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = velocity_component
variable = velocity_component
search_value_conflicts = false
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_errors/invalid_settings/boundary_id.i)
# The mesh file used for nekRS (brick.re2) has six sidesets numbered
# as 1, 2, 3, 4, 5, 6. Trying to construct the surface mesh corresponding
# to boundary 8 (a non-existent boundary ID) should throw an error.
[Mesh]
type = NekRSMesh
boundary = 8
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(tutorials/gas_compact_multiphysics/nek.i)
# copy-pasta from common_input.i
channel_diameter = 0.016 # diameter of the coolant channels (m)
height = 6.343 # height of the full core (m)
inlet_T = 598.0 # inlet fluid temperature (K)
power = 200e6 # full core power (W)
mdot = 117.3 # fluid mass flowrate (kg/s)
fluid_density = 5.5508 # fluid density (kg/m3)
fluid_Cp = 5189.0 # fluid isobaric specific heat (J/kg/K)
n_bundles = 12 # number of bundles in the full core
n_coolant_channels_per_block = 108 # number of coolant channels per assembly
unit_cell_height = 1.6 # unit cell height - arbitrarily selected
[Mesh]
type = NekRSMesh
boundary = '3'
volume = true
scaling = ${channel_diameter}
[]
[Problem]
type = NekRSProblem
casename = 'ranstube'
has_heat_source = false
n_usrwrk_slots = 2
nondimensional = true
U_ref = ${fparse mdot / (n_bundles * n_coolant_channels_per_block) / fluid_density / (pi * channel_diameter * channel_diameter / 4.0)}
T_ref = ${inlet_T}
dT_ref = ${fparse power / mdot / fluid_Cp * unit_cell_height / height}
L_ref = ${channel_diameter}
rho_0 = ${fluid_density}
Cp_0 = ${fluid_Cp}
synchronization_interval = parent_app
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[screen]
type = Console
hide = 'flux_integral transfer_in'
[]
[csv]
file_base = 'csv/nek'
type = CSV
[]
[]
[Postprocessors]
[inlet_T]
type = NekSideAverage
field = temperature
boundary = '1'
[]
[outlet_T]
type = NekSideAverage
field = temperature
boundary = '2'
[]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[]
(test/tests/nek_stochastic/shift/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
n_usrwrk_slots = 3
output = 'scalar01 scalar02 scalar03'
first_reserved_usrwrk_slot = 1
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar2]
type = NekScalarValue
value = 2.5
[]
[scalar3]
type = NekScalarValue
value = 3.5
[]
[]
[Postprocessors]
[s2]
type = NekScalarValuePostprocessor
userobject = scalar2
[]
[s3]
type = NekScalarValuePostprocessor
userobject = scalar3
[]
[max_scalar1]
type = NodalExtremeValue
variable = scalar01
value_type = max
[]
[min_scalar1]
type = NodalExtremeValue
variable = scalar01
value_type = min
[]
[max_scalar2]
type = NodalExtremeValue
variable = scalar02
value_type = max
[]
[min_scalar2]
type = NodalExtremeValue
variable = scalar02
value_type = min
[]
[max_scalar3]
type = NodalExtremeValue
variable = scalar03
value_type = max
[]
[min_scalar3]
type = NodalExtremeValue
variable = scalar03
value_type = min
[]
[]
[Outputs]
csv = true
[]
(test/tests/nek_stochastic/errors/nek_error.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSProblem
n_usrwrk_slots = 1
casename = 'ethier'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
usrwrk_slot = 0
[]
[]
(test/tests/userobjects/subchannel_layered/order_error.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[UserObjects]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning'
field = temperature
[]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/postprocessors/nek_volume_extrema/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[max_temp]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_temp]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[max_p]
type = NekVolumeExtremeValue
field = pressure
value_type = max
[]
[min_p]
type = NekVolumeExtremeValue
field = pressure
value_type = min
[]
[max_velocity]
type = NekVolumeExtremeValue
field = velocity
value_type = max
[]
[min_velocity]
type = NekVolumeExtremeValue
field = velocity
value_type = min
[]
[max_x_velocity]
type = NekVolumeExtremeValue
field = velocity_x
value_type = max
[]
[min_x_velocity]
type = NekVolumeExtremeValue
field = velocity_x
value_type = min
[]
[max_y_velocity]
type = NekVolumeExtremeValue
field = velocity_y
value_type = max
[]
[min_y_velocity]
type = NekVolumeExtremeValue
field = velocity_y
value_type = min
[]
[max_z_velocity]
type = NekVolumeExtremeValue
field = velocity_z
value_type = max
[]
[min_z_velocity]
type = NekVolumeExtremeValue
field = velocity_z
value_type = min
[]
[]
(test/tests/userobjects/sideset_layered/side_average.i)
[GlobalParams]
map_space_by_qp = true
check_boundary_restricted = false
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[avg_T_duct_wall]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[avg_T_duct_wall]
type = SpatialUserObjectAux
variable = avg_T_duct_wall
user_object = avg_T_duct_wall
boundary = '2'
[]
[]
[UserObjects]
[x]
type = LayeredBin
direction = x
num_layers = 2
[]
[y]
type = LayeredBin
direction = y
num_layers = 2
[]
[z]
type = LayeredBin
direction = z
num_layers = 3
[]
[avg_T_duct_wall]
type = NekBinnedSideAverage
bins = 'x y z'
field = temperature
boundary = '2'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[VectorPostprocessors]
[temp_duct]
type = SpatialUserObjectVectorPostprocessor
userobject = avg_T_duct_wall
[]
[]
[Outputs]
csv = true
exodus = true
[]
(test/tests/userobjects/layered_layered/1d.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
nondimensional = true
L_ref = 2.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 2.0
[]
[AuxVariables]
[uo]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo]
type = SpatialUserObjectAux
variable = uo
user_object = vol_integral
[]
[]
[UserObjects]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
[x_bins_gaps]
type = LayeredGapBin
direction = x
num_layers = 3
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'x_bins'
field = pressure
[]
[face_avg]
type = NekBinnedPlaneAverage
bins = 'x_bins_gaps'
gap_thickness = 0.1
map_space_by_qp = true
field = pressure
[]
[]
[VectorPostprocessors]
# from_uo gives exactly the same results as manually specifying the points in 'manually_provided'
[from_uo]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
[]
[manually_provided]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
points = '-0.66666667 0.0 0.0
0.0 0.0 0.0
0.66666667 0.0 0.0'
[]
[from_uo_gap]
type = SpatialUserObjectVectorPostprocessor
userobject = face_avg
[]
[manually_provided_gap]
type = SpatialUserObjectVectorPostprocessor
userobject = face_avg
points = '-1.0 0.0 0.0
-0.33333 0.0 0.0
0.33333 0.0 0.0
1.0 0.0 0.0'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
[]
(test/tests/nek_errors/invalid_settings/problem_mesh.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Variables]
[dummy]
[]
[]
[Kernels]
[diffusion]
type = Diffusion
variable = dummy
[]
[]
[Executioner]
type = Steady
[]
(test/tests/cht/pebble/shift/nek.i)
[Mesh]
type = NekRSMesh
boundary = '1'
scaling = 100.0
[]
[Problem]
type = NekRSProblem
casename = 'onepebble2'
first_reserved_usrwrk_slot = 1
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[flux_in_nek]
type = NekHeatFluxIntegral
boundary = '1'
[]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
(test/tests/postprocessors/nek_heat_flux_integral/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[flux_side1]
type = NekHeatFluxIntegral
boundary = '1'
[]
[flux_side2]
type = NekHeatFluxIntegral
boundary = '2'
[]
[flux_side3]
type = NekHeatFluxIntegral
boundary = '3'
[]
[flux_side4]
type = NekHeatFluxIntegral
boundary = '4'
[]
[flux_side5]
type = NekHeatFluxIntegral
boundary = '5'
[]
[flux_side6]
type = NekHeatFluxIntegral
boundary = '6'
[]
[flux_side7]
type = NekHeatFluxIntegral
boundary = '7'
[]
[flux_side8]
type = NekHeatFluxIntegral
boundary = '8'
[]
[]
(test/tests/nek_errors/invalid_scalar/nek_uo.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 10
pin_pitch = 1
pin_diameter = 1
n_rings = 1
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning'
[]
[]
(test/tests/conduction/nonidentical_interface/cylinders/nek_exact.i)
[Problem]
type = NekRSProblem
casename = 'cylinder'
[]
[Mesh]
type = NekRSMesh
order = FIRST
exact = true
boundary = '2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/nek_standalone/ethier/nek.i)
[Mesh]
type = NekRSMesh
volume = true
order = SECOND
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'ethier'
output = 'pressure velocity temperature'
# We omit the non-dimensional settings here in order to just extract the
# non-dimensional solution as-is, without dimensionalizing it.
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[heat_flux]
type = NekHeatFluxIntegral
boundary = '1'
[]
# These postprocessors are just used to verify correct extraction of the
# NekRS solution, because we can directly compare against the values printed
# to stdout by NekRS
[max_Vx]
type = NodalExtremeValue
variable = vel_x
value_type = max
[]
[min_Vx]
type = NodalExtremeValue
variable = vel_x
value_type = min
[]
[max_Vy]
type = NodalExtremeValue
variable = vel_y
value_type = max
[]
[min_Vy]
type = NodalExtremeValue
variable = vel_y
value_type = min
[]
[max_Vz]
type = NodalExtremeValue
variable = vel_z
value_type = max
[]
[min_Vz]
type = NodalExtremeValue
variable = vel_z
value_type = min
[]
[max_p]
type = NodalExtremeValue
variable = P
value_type = max
[]
[min_p]
type = NodalExtremeValue
variable = P
value_type = min
[]
[max_T]
type = NodalExtremeValue
variable = temp
value_type = max
[]
[min_T]
type = NodalExtremeValue
variable = temp
value_type = min
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
[]
(test/tests/userobjects/sideset_layered/invalid_boundary.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[UserObjects]
[x]
type = LayeredBin
direction = x
num_layers = 3
[]
[vol_avg]
type = NekBinnedSideIntegral
bins = 'x'
field = temperature
boundary = '5'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/conduction/identical_volume/cube/nek.i)
[Problem]
type = NekRSProblem
casename = 'cube'
# we only technically need two scratch space slots for this problem,
# (the first is reserved for heat flux, but ultimately not used in this
# volume-only problem, while the second is reserved for the volumetric heat
# source, which is actually used),
# so we can skip allocating extra
n_usrwrk_slots = 2
[]
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[flux_out]
type = NekHeatFluxIntegral
boundary = '1 2 3 4 5 6'
[]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[avg_T_volume]
type = NekVolumeIntegral
field = temperature
[]
[avg_T_back]
type = NekSideAverage
field = temperature
boundary = '6'
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
# for this tests purposes, we only want to check temperature. This keeps the gold file smaller
hide = 'heat_source'
[]
(test/tests/nek_temp/exact/exact_volume.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'temperature'
[]
[Mesh]
type = NekRSMesh
exact = true
volume = true
[]
[AuxVariables]
[analytic]
[]
[error_temp]
order = CONSTANT
family = MONOMIAL
[]
[difference]
[]
[]
[ICs]
[analytic]
type = FunctionIC
variable = analytic
function = analytic
[]
[]
[AuxKernels]
[error_temp]
type = ElementL2ErrorFunctionAux
variable = error_temp
coupled_variable = temp
function = analytic
[]
[difference]
type = ParsedAux
variable = difference
coupled_variables = 'analytic temp'
expression = 'temp-analytic'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Functions]
[analytic]
type = ParsedFunction
expression = 'exp(x)+sin(y)+x*y*z'
[]
[]
[Postprocessors]
[l2_error_in_nek_temp]
type = ElementL2Error
variable = temp
function = analytic
[]
[max_diff]
type = NodalExtremeValue
variable = difference
value_type = max
[]
[min_diff]
type = NodalExtremeValue
variable = difference
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
hide = 'difference error_temp analytic'
[]
(test/tests/nek_file_output/nek_as_master/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/conduction/nonidentical_volume/cylinder/nek_exact.i)
[Problem]
type = NekRSProblem
casename = 'cylinder_low'
usrwrk_output = '1'
usrwrk_output_prefix = 'src'
[]
[Mesh]
type = NekRSMesh
volume = true
exact = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[avg_T_volume]
type = NekVolumeAverage
field = temperature
[]
[point]
type = PointValue
variable = temp
point = '0.5 0.0 0.0 '
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
csv = true
[]
(test/tests/userobjects/volume/dimensional/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature pressure velocity'
[]
[AuxVariables]
[avg_T]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[avg_v]
family = MONOMIAL
order = CONSTANT
[]
[integral_T]
family = MONOMIAL
order = CONSTANT
[]
[integral_p]
family = MONOMIAL
order = CONSTANT
[]
[integral_v]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[avg_T]
type = SpatialUserObjectAux
variable = avg_T
user_object = avg_T
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
[]
[avg_v]
type = SpatialUserObjectAux
variable = avg_v
user_object = avg_v
[]
[integral_T]
type = SpatialUserObjectAux
variable = integral_T
user_object = integral_T
[]
[integral_p]
type = SpatialUserObjectAux
variable = integral_p
user_object = integral_p
[]
[integral_v]
type = SpatialUserObjectAux
variable = integral_v
user_object = integral_v
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[avg_T]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[avg_p]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[avg_v]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[integral_T]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[integral_p]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[integral_v]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_T
to_multi_app = subchannel
variable = avg_T
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_p
to_multi_app = subchannel
variable = avg_p
[]
[uo3_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_v
to_multi_app = subchannel
variable = avg_v
[]
[uo4_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_T
to_multi_app = subchannel
variable = integral_T
[]
[uo5_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_p
to_multi_app = subchannel
variable = integral_p
[]
[uo6_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_v
to_multi_app = subchannel
variable = integral_v
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
file_base = nek_dim
[]
(test/tests/nek_errors/deformation/user/nek.i)
[Mesh]
type = NekRSMesh
volume = true
boundary = '2'
parallel_type = replicated
[]
[Problem]
type = NekRSProblem
casename = 'user'
has_heat_source = false
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/conduction/identical_interface/cube/nek.i)
[Problem]
type = NekRSProblem
casename = 'cube'
[]
[Mesh]
type = NekRSMesh
boundary = '4'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/nek_stochastic/quiet_init/nek_multi.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'ethier'
n_usrwrk_slots = 2
output = 'scalar02'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
[]
[]
[Controls]
[stochastic]
type = SamplerReceiver
[]
[]
[Postprocessors]
[s1]
type = NekScalarValuePostprocessor
userobject = scalar1
[]
# we use the stochastic value to set the scalar (in the .udf files). Here,
# we are checking that the value of the scalar everywhere is equation to the 's1' postprocessor
[max_scalar]
type = ElementExtremeValue
variable = scalar02
value_type = max
[]
[min_scalar]
type = ElementExtremeValue
variable = scalar02
value_type = min
[]
[]
[Outputs]
csv = true
[]
(test/tests/conduction/zero_flux/mismatch_nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
conserve_flux_by_sideset = true
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/postprocessors/dimensionless_numbers/dimensional/nek.i)
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
boundary = '3'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[Re]
type = ReynoldsNumber
L_ref = 0.25
boundary = '1'
[]
[Pe]
type = PecletNumber
L_ref = 0.25
boundary = '1'
[]
[area]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[mdot]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '1'
[]
[inlet_v]
type = NekSideAverage
field = velocity
boundary = '1'
[]
[]
(test/tests/nek_file_output/nek_as_sub/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_errors/insufficient_scratch/standalone/nek_standalone.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_file_output/nek_as_master_even/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/conduction/zero_flux/nek_vpp.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
conserve_flux_by_sideset = true
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/postprocessors/nek_side_extrema/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[max_temp_side1]
type = NekSideExtremeValue
field = temperature
boundary = '1'
value_type = max
[]
[max_temp_side2]
type = NekSideExtremeValue
field = temperature
boundary = '2'
value_type = max
[]
[max_temp_side3]
type = NekSideExtremeValue
field = temperature
boundary = '3'
value_type = max
[]
[max_temp_side4]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = max
[]
[max_temp_side5]
type = NekSideExtremeValue
field = temperature
boundary = '5'
value_type = max
[]
[max_temp_side6]
type = NekSideExtremeValue
field = temperature
boundary = '6'
value_type = max
[]
[max_temp_side7]
type = NekSideExtremeValue
field = temperature
boundary = '7'
value_type = max
[]
[max_temp_side8]
type = NekSideExtremeValue
field = temperature
boundary = '8'
value_type = max
[]
[min_temp_side1]
type = NekSideExtremeValue
field = temperature
boundary = '1'
value_type = min
[]
[min_temp_side2]
type = NekSideExtremeValue
field = temperature
boundary = '2'
value_type = min
[]
[min_temp_side3]
type = NekSideExtremeValue
field = temperature
boundary = '3'
value_type = min
[]
[min_temp_side4]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = min
[]
[min_temp_side5]
type = NekSideExtremeValue
field = temperature
boundary = '5'
value_type = min
[]
[min_temp_side6]
type = NekSideExtremeValue
field = temperature
boundary = '6'
value_type = min
[]
[min_temp_side7]
type = NekSideExtremeValue
field = temperature
boundary = '7'
value_type = min
[]
[min_temp_side8]
type = NekSideExtremeValue
field = temperature
boundary = '8'
value_type = min
[]
[max_pressure_side1]
type = NekSideExtremeValue
field = pressure
boundary = '1'
[]
[max_pressure_side2]
type = NekSideExtremeValue
field = pressure
boundary = '2'
[]
[max_pressure_side3]
type = NekSideExtremeValue
field = pressure
boundary = '3'
[]
[max_pressure_side4]
type = NekSideExtremeValue
field = pressure
boundary = '4'
[]
[max_pressure_side5]
type = NekSideExtremeValue
field = pressure
boundary = '5'
[]
[max_pressure_side6]
type = NekSideExtremeValue
field = pressure
boundary = '6'
[]
[max_pressure_side7]
type = NekSideExtremeValue
field = pressure
boundary = '7'
[]
[max_pressure_side8]
type = NekSideExtremeValue
field = pressure
boundary = '8'
[]
[min_pressure_side1]
type = NekSideExtremeValue
field = pressure
boundary = '1'
value_type = min
[]
[min_pressure_side2]
type = NekSideExtremeValue
field = pressure
boundary = '2'
value_type = min
[]
[min_pressure_side3]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = min
[]
[min_pressure_side4]
type = NekSideExtremeValue
field = pressure
boundary = '4'
value_type = min
[]
[min_pressure_side5]
type = NekSideExtremeValue
field = pressure
boundary = '5'
value_type = min
[]
[min_pressure_side6]
type = NekSideExtremeValue
field = pressure
boundary = '6'
value_type = min
[]
[min_pressure_side7]
type = NekSideExtremeValue
field = pressure
boundary = '7'
value_type = min
[]
[min_pressure_side8]
type = NekSideExtremeValue
field = pressure
boundary = '8'
value_type = min
[]
[max_velocity_side1]
type = NekSideExtremeValue
field = velocity
boundary = '1'
value_type = max
[]
[max_velocity_side2]
type = NekSideExtremeValue
field = velocity
boundary = '2'
value_type = max
[]
[max_velocity_side3]
type = NekSideExtremeValue
field = velocity
boundary = '3'
value_type = max
[]
[max_velocity_side4]
type = NekSideExtremeValue
field = velocity
boundary = '4'
value_type = max
[]
[max_velocity_side5]
type = NekSideExtremeValue
field = velocity
boundary = '5'
value_type = max
[]
[max_velocity_side6]
type = NekSideExtremeValue
field = velocity
boundary = '6'
value_type = max
[]
[max_velocity_side7]
type = NekSideExtremeValue
field = velocity
boundary = '7'
value_type = max
[]
[max_velocity_side8]
type = NekSideExtremeValue
field = velocity
boundary = '8'
value_type = max
[]
[min_velocity_side1]
type = NekSideExtremeValue
field = velocity
boundary = '1'
value_type = min
[]
[min_velocity_side2]
type = NekSideExtremeValue
field = velocity
boundary = '2'
value_type = min
[]
[min_velocity_side3]
type = NekSideExtremeValue
field = velocity
boundary = '3'
value_type = min
[]
[min_velocity_side4]
type = NekSideExtremeValue
field = velocity
boundary = '4'
value_type = min
[]
[min_velocity_side5]
type = NekSideExtremeValue
field = velocity
boundary = '5'
value_type = min
[]
[min_velocity_side6]
type = NekSideExtremeValue
field = velocity
boundary = '6'
value_type = min
[]
[min_velocity_side7]
type = NekSideExtremeValue
field = velocity
boundary = '7'
value_type = min
[]
[min_velocity_side8]
type = NekSideExtremeValue
field = velocity
boundary = '8'
value_type = min
[]
[max_x_velocity_side1]
type = NekSideExtremeValue
field = velocity_x
boundary = '1'
value_type = max
[]
[max_x_velocity_side2]
type = NekSideExtremeValue
field = velocity_x
boundary = '2'
value_type = max
[]
[max_x_velocity_side3]
type = NekSideExtremeValue
field = velocity_x
boundary = '3'
value_type = max
[]
[max_x_velocity_side4]
type = NekSideExtremeValue
field = velocity_x
boundary = '4'
value_type = max
[]
[max_x_velocity_side5]
type = NekSideExtremeValue
field = velocity_x
boundary = '5'
value_type = max
[]
[max_x_velocity_side6]
type = NekSideExtremeValue
field = velocity_x
boundary = '6'
value_type = max
[]
[max_x_velocity_side7]
type = NekSideExtremeValue
field = velocity_x
boundary = '7'
value_type = max
[]
[max_x_velocity_side8]
type = NekSideExtremeValue
field = velocity_x
boundary = '8'
value_type = max
[]
[min_x_velocity_side1]
type = NekSideExtremeValue
field = velocity_x
boundary = '1'
value_type = min
[]
[min_x_velocity_side2]
type = NekSideExtremeValue
field = velocity_x
boundary = '2'
value_type = min
[]
[min_x_velocity_side3]
type = NekSideExtremeValue
field = velocity_x
boundary = '3'
value_type = min
[]
[min_x_velocity_side4]
type = NekSideExtremeValue
field = velocity_x
boundary = '4'
value_type = min
[]
[min_x_velocity_side5]
type = NekSideExtremeValue
field = velocity_x
boundary = '5'
value_type = min
[]
[min_x_velocity_side6]
type = NekSideExtremeValue
field = velocity_x
boundary = '6'
value_type = min
[]
[min_x_velocity_side7]
type = NekSideExtremeValue
field = velocity_x
boundary = '7'
value_type = min
[]
[min_x_velocity_side8]
type = NekSideExtremeValue
field = velocity_x
boundary = '8'
value_type = min
[]
[max_y_velocity_side1]
type = NekSideExtremeValue
field = velocity_y
boundary = '1'
value_type = max
[]
[max_y_velocity_side2]
type = NekSideExtremeValue
field = velocity_y
boundary = '2'
value_type = max
[]
[max_y_velocity_side3]
type = NekSideExtremeValue
field = velocity_y
boundary = '3'
value_type = max
[]
[max_y_velocity_side4]
type = NekSideExtremeValue
field = velocity_y
boundary = '4'
value_type = max
[]
[max_y_velocity_side5]
type = NekSideExtremeValue
field = velocity_y
boundary = '5'
value_type = max
[]
[max_y_velocity_side6]
type = NekSideExtremeValue
field = velocity_y
boundary = '6'
value_type = max
[]
[max_y_velocity_side7]
type = NekSideExtremeValue
field = velocity_y
boundary = '7'
value_type = max
[]
[max_y_velocity_side8]
type = NekSideExtremeValue
field = velocity_y
boundary = '8'
value_type = max
[]
[min_y_velocity_side1]
type = NekSideExtremeValue
field = velocity_y
boundary = '1'
value_type = min
[]
[min_y_velocity_side2]
type = NekSideExtremeValue
field = velocity_y
boundary = '2'
value_type = min
[]
[min_y_velocity_side3]
type = NekSideExtremeValue
field = velocity_y
boundary = '3'
value_type = min
[]
[min_y_velocity_side4]
type = NekSideExtremeValue
field = velocity_y
boundary = '4'
value_type = min
[]
[min_y_velocity_side5]
type = NekSideExtremeValue
field = velocity_y
boundary = '5'
value_type = min
[]
[min_y_velocity_side6]
type = NekSideExtremeValue
field = velocity_y
boundary = '6'
value_type = min
[]
[min_y_velocity_side7]
type = NekSideExtremeValue
field = velocity_y
boundary = '7'
value_type = min
[]
[min_y_velocity_side8]
type = NekSideExtremeValue
field = velocity_y
boundary = '8'
value_type = min
[]
[max_z_velocity_side1]
type = NekSideExtremeValue
field = velocity_z
boundary = '1'
value_type = max
[]
[max_z_velocity_side2]
type = NekSideExtremeValue
field = velocity_z
boundary = '2'
value_type = max
[]
[max_z_velocity_side3]
type = NekSideExtremeValue
field = velocity_z
boundary = '3'
value_type = max
[]
[max_z_velocity_side4]
type = NekSideExtremeValue
field = velocity_z
boundary = '4'
value_type = max
[]
[max_z_velocity_side5]
type = NekSideExtremeValue
field = velocity_z
boundary = '5'
value_type = max
[]
[max_z_velocity_side6]
type = NekSideExtremeValue
field = velocity_z
boundary = '6'
value_type = max
[]
[max_z_velocity_side7]
type = NekSideExtremeValue
field = velocity_z
boundary = '7'
value_type = max
[]
[max_z_velocity_side8]
type = NekSideExtremeValue
field = velocity_z
boundary = '8'
value_type = max
[]
[min_z_velocity_side1]
type = NekSideExtremeValue
field = velocity_z
boundary = '1'
value_type = min
[]
[min_z_velocity_side2]
type = NekSideExtremeValue
field = velocity_z
boundary = '2'
value_type = min
[]
[min_z_velocity_side3]
type = NekSideExtremeValue
field = velocity_z
boundary = '3'
value_type = min
[]
[min_z_velocity_side4]
type = NekSideExtremeValue
field = velocity_z
boundary = '4'
value_type = min
[]
[min_z_velocity_side5]
type = NekSideExtremeValue
field = velocity_z
boundary = '5'
value_type = min
[]
[min_z_velocity_side6]
type = NekSideExtremeValue
field = velocity_z
boundary = '6'
value_type = min
[]
[min_z_velocity_side7]
type = NekSideExtremeValue
field = velocity_z
boundary = '7'
value_type = min
[]
[min_z_velocity_side8]
type = NekSideExtremeValue
field = velocity_z
boundary = '8'
value_type = min
[]
[]
(test/tests/userobjects/sideset_layered/z_bins.i)
[GlobalParams]
check_boundary_restricted = false
map_space_by_qp = true
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[uo1_bin1]
family = MONOMIAL
order = CONSTANT
[]
[uo1_bin3]
family = MONOMIAL
order = CONSTANT
[]
[uo2_bin1]
family = MONOMIAL
order = CONSTANT
[]
[uo2_bin3]
family = MONOMIAL
order = CONSTANT
[]
[uo_1_2_bin3]
family = MONOMIAL
order = CONSTANT
[]
[T1_bin1]
family = MONOMIAL
order = CONSTANT
[]
[T1_bin3]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[T1_bin1]
type = SpatialUserObjectAux
variable = T1_bin1
user_object = T1_bin1
boundary = '1'
[]
[T1_bin3]
type = SpatialUserObjectAux
variable = T1_bin3
user_object = T1_bin3
boundary = '1'
[]
[uo1_bin1]
type = SpatialUserObjectAux
variable = uo1_bin1
user_object = side1_bin1
boundary = '1'
[]
[uo2_bin1]
type = SpatialUserObjectAux
variable = uo2_bin1
user_object = side2_bin1
boundary = '2'
[]
[uo1_bin3]
type = SpatialUserObjectAux
variable = uo1_bin3
user_object = side1_bin3
boundary = '1'
[]
[uo2_bin3]
type = SpatialUserObjectAux
variable = uo2_bin3
user_object = side2_bin3
boundary = '2'
[]
[uo_1_2_bin3]
type = SpatialUserObjectAux
variable = uo_1_2_bin3
user_object = side_1_2_bin3
boundary = '1 2'
[]
[]
[UserObjects]
[z1]
type = LayeredBin
direction = z
num_layers = 1
[]
[side1_bin1]
type = NekBinnedSideIntegral
bins = 'z1'
field = unity
boundary = '1'
[]
[side2_bin1]
type = NekBinnedSideIntegral
bins = 'z1'
field = unity
boundary = '2'
[]
[side_1_2_bin1] # should equal the sum of side1_bin1 and side1_bin2
type = NekBinnedSideIntegral
bins = 'z1'
field = unity
boundary = '1 2'
[]
[T1_bin1]
type = NekBinnedSideIntegral
bins = 'z1'
field = temperature
boundary = '1'
[]
[z3]
type = LayeredBin
direction = z
num_layers = 3
[]
[side1_bin3]
type = NekBinnedSideIntegral
bins = 'z3'
field = unity
boundary = '1'
[]
[side2_bin3]
type = NekBinnedSideIntegral
bins = 'z3'
field = unity
boundary = '2'
[]
[side_1_2_bin3] # should equal the sum of side1_bin3 and side2_bin3
type = NekBinnedSideIntegral
bins = 'z3'
field = unity
boundary = '1 2'
[]
[T1_bin3]
type = NekBinnedSideIntegral
bins = 'z3'
field = temperature
boundary = '1'
[]
[]
[Postprocessors]
[area1] # should match the value of the side1_bin1 user object
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_divided1] # should match the value of the side1_bin3 user object
type = LinearCombinationPostprocessor
pp_names = 'area1'
pp_coefs = '${fparse 1.0 / 3.0}'
[]
[area2] # should match the value of the side2_bin1 user object
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_divided2] # should match the value of the side2_bin3 user object
type = LinearCombinationPostprocessor
pp_names = 'area2'
pp_coefs = '${fparse 1.0 / 3.0}'
[]
[T1] # should match the value of the T1_bin1 user object
type = NekSideIntegral
field = temperature
boundary = '1'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
execute_on = 'final'
exodus = true
# removed from output to get a smaller gold file
hide = 'temp'
[]
(test/tests/userobjects/interval/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
nondimensional = true
L_ref = 2.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 2.0
[]
[UserObjects]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
[avg_v]
type = NekBinnedVolumeAverage
bins = 'x_bins'
field = velocity_z
interval = 3
[]
[]
[VectorPostprocessors]
[v]
type = SpatialUserObjectVectorPostprocessor
userobject = avg_v
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
interval = 3
[]
(test/tests/nek_stochastic/nek_multi.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'ethier'
n_usrwrk_slots = 2
output = 'scalar02'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
[]
[]
[Controls]
[stochastic]
type = SamplerReceiver
[]
[]
[Postprocessors]
[s1]
type = NekScalarValuePostprocessor
userobject = scalar1
[]
# we use the stochastic value to set the scalar (in the .udf files). Here,
# we are checking that the value of the scalar everywhere is equation to the 's1' postprocessor
[max_scalar]
type = ElementExtremeValue
variable = scalar02
value_type = max
[]
[min_scalar]
type = ElementExtremeValue
variable = scalar02
value_type = min
[]
[]
[Outputs]
csv = true
[]
(test/tests/nek_errors/invalid_scalar/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_S]
type = NekVolumeExtremeValue
[]
[]
(test/tests/nek_errors/invalid_field/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
[]
[]
(tutorials/load_from_exodus/nek.i)
[Mesh]
type = NekRSMesh
volume = true
order = SECOND
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'ethier'
output = 'temperature'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/conduction/boundary_and_volume/prism/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
boundary = '2'
order = FIRST
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[avg_T_volume]
type = NekVolumeAverage
field = temperature
[]
[heat_flux]
type = NekHeatFluxIntegral
boundary = '2'
[]
[nek_min_1]
type = NekSideExtremeValue
field = temperature
boundary = '3'
value_type = min
[]
[nek_min_2]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = min
[]
[nek_min_3]
type = NekSideExtremeValue
field = temperature
boundary = '5'
value_type = min
[]
[nek_min_4]
type = NekSideExtremeValue
field = temperature
boundary = '6'
value_type = min
[]
[nek_max_1]
type = NekSideExtremeValue
field = temperature
boundary = '3'
[]
[nek_max_2]
type = NekSideExtremeValue
field = temperature
boundary = '4'
[]
[nek_max_3]
type = NekSideExtremeValue
field = temperature
boundary = '5'
[]
[nek_max_4]
type = NekSideExtremeValue
field = temperature
boundary = '6'
[]
[]
[Outputs]
exodus = true
interval = 30
hide = 'flux_integral source_integral'
[]
(test/tests/nek_errors/insufficient_scratch/nek.i)
[Mesh]
type = NekRSMesh
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/auxkernels/nek_spatial_bin_component_aux/invalid_field.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[AuxVariables]
[uo]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo]
type = NekSpatialBinComponentAux
variable = uo
user_object = vol_integral
component = 0
[]
[]
[UserObjects]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'x_bins'
field = pressure
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_temp/first_order/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = FIRST
boundary = '1 2 3 4 5 6 7 8'
[]
[AuxVariables]
[analytic]
[]
[error_temp]
order = CONSTANT
family = MONOMIAL
[]
[difference]
[]
[]
[ICs]
[analytic]
type = FunctionIC
variable = analytic
function = analytic
[]
[]
[AuxKernels]
[error_temp]
type = ElementL2ErrorFunctionAux
variable = error_temp
coupled_variable = temp
function = analytic
[]
[difference]
type = ParsedAux
variable = difference
coupled_variables = 'analytic temp'
expression = 'temp-analytic'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Functions]
[analytic]
type = ParsedFunction
expression = 'exp(x)+sin(y)+x*y*z'
[]
[]
[Postprocessors]
[l2_error_in_nek_temp]
type = ElementL2Error
variable = temp
function = analytic
[]
[max_diff]
type = NodalExtremeValue
variable = difference
value_type = max
[]
[min_diff]
type = NodalExtremeValue
variable = difference
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
hide = 'flux_integral'
[]
(test/tests/multiple_nek_apps/subdirectory/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid/pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[temp_avg1]
type = NekSideAverage
field = temperature
boundary = '1'
[]
[temp_avg2]
type = NekSideAverage
field = temperature
boundary = '2'
[]
[temp_avg3]
type = NekSideAverage
field = temperature
boundary = '3'
[]
[temp_avg4]
type = NekSideAverage
field = temperature
boundary = '4'
[]
[temp_avg5]
type = NekSideAverage
field = temperature
boundary = '5'
[]
[temp_avg6]
type = NekSideAverage
field = temperature
boundary = '6'
[]
[temp_avg7]
type = NekSideAverage
field = temperature
boundary = '7'
[]
[temp_avg8]
type = NekSideAverage
field = temperature
boundary = '8'
[]
[pressure_avg1]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[pressure_avg2]
type = NekSideAverage
field = pressure
boundary = '2'
[]
[pressure_avg3]
type = NekSideAverage
field = pressure
boundary = '3'
[]
[pressure_avg4]
type = NekSideAverage
field = pressure
boundary = '4'
[]
[pressure_avg5]
type = NekSideAverage
field = pressure
boundary = '5'
[]
[pressure_avg6]
type = NekSideAverage
field = pressure
boundary = '6'
[]
[pressure_avg7]
type = NekSideAverage
field = pressure
boundary = '7'
[]
[pressure_avg8]
type = NekSideAverage
field = pressure
boundary = '8'
[]
[velocity_avg1]
type = NekSideAverage
field = velocity
boundary = '1'
[]
[velocity_avg2]
type = NekSideAverage
field = velocity
boundary = '2'
[]
[velocity_avg3]
type = NekSideAverage
field = velocity
boundary = '3'
[]
[velocity_avg4]
type = NekSideAverage
field = velocity
boundary = '4'
[]
[velocity_avg5]
type = NekSideAverage
field = velocity
boundary = '5'
[]
[velocity_avg6]
type = NekSideAverage
field = velocity
boundary = '6'
[]
[velocity_avg7]
type = NekSideAverage
field = velocity
boundary = '7'
[]
[velocity_avg8]
type = NekSideAverage
field = velocity
boundary = '8'
[]
[x_velocity_avg1]
type = NekSideAverage
field = velocity_x
boundary = '1'
[]
[x_velocity_avg2]
type = NekSideAverage
field = velocity_x
boundary = '2'
[]
[x_velocity_avg3]
type = NekSideAverage
field = velocity_x
boundary = '3'
[]
[x_velocity_avg4]
type = NekSideAverage
field = velocity_x
boundary = '4'
[]
[x_velocity_avg5]
type = NekSideAverage
field = velocity_x
boundary = '5'
[]
[x_velocity_avg6]
type = NekSideAverage
field = velocity_x
boundary = '6'
[]
[x_velocity_avg7]
type = NekSideAverage
field = velocity_x
boundary = '7'
[]
[x_velocity_avg8]
type = NekSideAverage
field = velocity_x
boundary = '8'
[]
[y_velocity_avg1]
type = NekSideAverage
field = velocity_y
boundary = '1'
[]
[y_velocity_avg2]
type = NekSideAverage
field = velocity_y
boundary = '2'
[]
[y_velocity_avg3]
type = NekSideAverage
field = velocity_y
boundary = '3'
[]
[y_velocity_avg4]
type = NekSideAverage
field = velocity_y
boundary = '4'
[]
[y_velocity_avg5]
type = NekSideAverage
field = velocity_y
boundary = '5'
[]
[y_velocity_avg6]
type = NekSideAverage
field = velocity_y
boundary = '6'
[]
[y_velocity_avg7]
type = NekSideAverage
field = velocity_y
boundary = '7'
[]
[y_velocity_avg8]
type = NekSideAverage
field = velocity_y
boundary = '8'
[]
[z_velocity_avg1]
type = NekSideAverage
field = velocity_z
boundary = '1'
[]
[z_velocity_avg2]
type = NekSideAverage
field = velocity_z
boundary = '2'
[]
[z_velocity_avg3]
type = NekSideAverage
field = velocity_z
boundary = '3'
[]
[z_velocity_avg4]
type = NekSideAverage
field = velocity_z
boundary = '4'
[]
[z_velocity_avg5]
type = NekSideAverage
field = velocity_z
boundary = '5'
[]
[z_velocity_avg6]
type = NekSideAverage
field = velocity_z
boundary = '6'
[]
[z_velocity_avg7]
type = NekSideAverage
field = velocity_z
boundary = '7'
[]
[z_velocity_avg8]
type = NekSideAverage
field = velocity_z
boundary = '8'
[]
[velocity_comp1]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '1'
[]
[velocity_comp2]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '2'
[]
[velocity_comp3]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '3'
[]
[velocity_comp4]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '4'
[]
[velocity_comp5]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '5'
[]
[velocity_comp6]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '6'
[]
[velocity_comp7]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '7'
[]
[velocity_comp8]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '8'
[]
[]
(test/tests/nek_stochastic/device/nek_multi.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
n_usrwrk_slots = 1
output = 'temperature'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
[]
[]
[Controls]
[stochastic]
type = SamplerReceiver
[]
[]
[Postprocessors]
[s1]
type = NekScalarValuePostprocessor
userobject = scalar1
[]
# we use the stochastic value to set the boundary condition on temperature on sideset 1;
# we are checking that the value of the temperature on sideset 1 indeed matches that value
[max_on_side]
type = NekSideExtremeValue
field = temperature
boundary = '1'
value_type = max
[]
[min_on_side]
type = NekSideExtremeValue
field = temperature
boundary = '1'
value_type = min
[]
[]
[Outputs]
csv = true
[]
(test/tests/postprocessors/nek_side_average/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[temp_avg1]
type = NekSideAverage
field = temperature
boundary = '1'
[]
[temp_avg2]
type = NekSideAverage
field = temperature
boundary = '2'
[]
[temp_avg3]
type = NekSideAverage
field = temperature
boundary = '3'
[]
[temp_avg4]
type = NekSideAverage
field = temperature
boundary = '4'
[]
[temp_avg5]
type = NekSideAverage
field = temperature
boundary = '5'
[]
[temp_avg6]
type = NekSideAverage
field = temperature
boundary = '6'
[]
[temp_avg7]
type = NekSideAverage
field = temperature
boundary = '7'
[]
[temp_avg8]
type = NekSideAverage
field = temperature
boundary = '8'
[]
[pressure_avg1]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[pressure_avg2]
type = NekSideAverage
field = pressure
boundary = '2'
[]
[pressure_avg3]
type = NekSideAverage
field = pressure
boundary = '3'
[]
[pressure_avg4]
type = NekSideAverage
field = pressure
boundary = '4'
[]
[pressure_avg5]
type = NekSideAverage
field = pressure
boundary = '5'
[]
[pressure_avg6]
type = NekSideAverage
field = pressure
boundary = '6'
[]
[pressure_avg7]
type = NekSideAverage
field = pressure
boundary = '7'
[]
[pressure_avg8]
type = NekSideAverage
field = pressure
boundary = '8'
[]
[velocity_avg1]
type = NekSideAverage
field = velocity
boundary = '1'
[]
[velocity_avg2]
type = NekSideAverage
field = velocity
boundary = '2'
[]
[velocity_avg3]
type = NekSideAverage
field = velocity
boundary = '3'
[]
[velocity_avg4]
type = NekSideAverage
field = velocity
boundary = '4'
[]
[velocity_avg5]
type = NekSideAverage
field = velocity
boundary = '5'
[]
[velocity_avg6]
type = NekSideAverage
field = velocity
boundary = '6'
[]
[velocity_avg7]
type = NekSideAverage
field = velocity
boundary = '7'
[]
[velocity_avg8]
type = NekSideAverage
field = velocity
boundary = '8'
[]
[x_velocity_avg1]
type = NekSideAverage
field = velocity_x
boundary = '1'
[]
[x_velocity_avg2]
type = NekSideAverage
field = velocity_x
boundary = '2'
[]
[x_velocity_avg3]
type = NekSideAverage
field = velocity_x
boundary = '3'
[]
[x_velocity_avg4]
type = NekSideAverage
field = velocity_x
boundary = '4'
[]
[x_velocity_avg5]
type = NekSideAverage
field = velocity_x
boundary = '5'
[]
[x_velocity_avg6]
type = NekSideAverage
field = velocity_x
boundary = '6'
[]
[x_velocity_avg7]
type = NekSideAverage
field = velocity_x
boundary = '7'
[]
[x_velocity_avg8]
type = NekSideAverage
field = velocity_x
boundary = '8'
[]
[y_velocity_avg1]
type = NekSideAverage
field = velocity_y
boundary = '1'
[]
[y_velocity_avg2]
type = NekSideAverage
field = velocity_y
boundary = '2'
[]
[y_velocity_avg3]
type = NekSideAverage
field = velocity_y
boundary = '3'
[]
[y_velocity_avg4]
type = NekSideAverage
field = velocity_y
boundary = '4'
[]
[y_velocity_avg5]
type = NekSideAverage
field = velocity_y
boundary = '5'
[]
[y_velocity_avg6]
type = NekSideAverage
field = velocity_y
boundary = '6'
[]
[y_velocity_avg7]
type = NekSideAverage
field = velocity_y
boundary = '7'
[]
[y_velocity_avg8]
type = NekSideAverage
field = velocity_y
boundary = '8'
[]
[z_velocity_avg1]
type = NekSideAverage
field = velocity_z
boundary = '1'
[]
[z_velocity_avg2]
type = NekSideAverage
field = velocity_z
boundary = '2'
[]
[z_velocity_avg3]
type = NekSideAverage
field = velocity_z
boundary = '3'
[]
[z_velocity_avg4]
type = NekSideAverage
field = velocity_z
boundary = '4'
[]
[z_velocity_avg5]
type = NekSideAverage
field = velocity_z
boundary = '5'
[]
[z_velocity_avg6]
type = NekSideAverage
field = velocity_z
boundary = '6'
[]
[z_velocity_avg7]
type = NekSideAverage
field = velocity_z
boundary = '7'
[]
[z_velocity_avg8]
type = NekSideAverage
field = velocity_z
boundary = '8'
[]
[velocity_comp1]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '1'
[]
[velocity_comp2]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '2'
[]
[velocity_comp3]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '3'
[]
[velocity_comp4]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '4'
[]
[velocity_comp5]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '5'
[]
[velocity_comp6]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '6'
[]
[velocity_comp7]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '7'
[]
[velocity_comp8]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '8'
[]
[x_velocity2_avg1]
type = NekSideAverage
field = velocity_x_squared
boundary = '1'
[]
[x_velocity2_avg2]
type = NekSideAverage
field = velocity_x_squared
boundary = '2'
[]
[x_velocity2_avg3]
type = NekSideAverage
field = velocity_x_squared
boundary = '3'
[]
[x_velocity2_avg4]
type = NekSideAverage
field = velocity_x_squared
boundary = '4'
[]
[x_velocity2_avg5]
type = NekSideAverage
field = velocity_x_squared
boundary = '5'
[]
[x_velocity2_avg6]
type = NekSideAverage
field = velocity_x_squared
boundary = '6'
[]
[x_velocity2_avg7]
type = NekSideAverage
field = velocity_x_squared
boundary = '7'
[]
[x_velocity2_avg8]
type = NekSideAverage
field = velocity_x_squared
boundary = '8'
[]
[y_velocity2_avg1]
type = NekSideAverage
field = velocity_y_squared
boundary = '1'
[]
[y_velocity2_avg2]
type = NekSideAverage
field = velocity_y_squared
boundary = '2'
[]
[y_velocity2_avg3]
type = NekSideAverage
field = velocity_y_squared
boundary = '3'
[]
[y_velocity2_avg4]
type = NekSideAverage
field = velocity_y_squared
boundary = '4'
[]
[y_velocity2_avg5]
type = NekSideAverage
field = velocity_y_squared
boundary = '5'
[]
[y_velocity2_avg6]
type = NekSideAverage
field = velocity_y_squared
boundary = '6'
[]
[y_velocity2_avg7]
type = NekSideAverage
field = velocity_y_squared
boundary = '7'
[]
[y_velocity2_avg8]
type = NekSideAverage
field = velocity_y_squared
boundary = '8'
[]
[z_velocity2_avg1]
type = NekSideAverage
field = velocity_z_squared
boundary = '1'
[]
[z_velocity2_avg2]
type = NekSideAverage
field = velocity_z_squared
boundary = '2'
[]
[z_velocity2_avg3]
type = NekSideAverage
field = velocity_z_squared
boundary = '3'
[]
[z_velocity2_avg4]
type = NekSideAverage
field = velocity_z_squared
boundary = '4'
[]
[z_velocity2_avg5]
type = NekSideAverage
field = velocity_z_squared
boundary = '5'
[]
[z_velocity2_avg6]
type = NekSideAverage
field = velocity_z_squared
boundary = '6'
[]
[z_velocity2_avg7]
type = NekSideAverage
field = velocity_z_squared
boundary = '7'
[]
[z_velocity2_avg8]
type = NekSideAverage
field = velocity_z_squared
boundary = '8'
[]
[]
(test/tests/deformation/nek_standalone/nek_boundary.i)
[Mesh]
type = NekRSMesh
boundary = '1 2 3'
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'mv_cyl'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[volume]
type = NekVolumeIntegral
field = unity
[]
[area]
type = NekSideIntegral
field = unity
boundary = '1 2 3'
[]
# these will not reflect the changing mesh, because we do not copy displacements
# from NekRS to MOOSE
[area_moose]
type = VolumePostprocessor
[]
[]
[Outputs]
csv = true
execute_on = 'final'
[]
(test/tests/nek_separatedomain/transfers_temperature/nek.i)
[Problem]
type = NekRSSeparateDomainProblem
inlet_boundary = '1'
outlet_boundary = '2'
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[inlet_V_max]
type = NekSideExtremeValue
boundary = '1'
field = velocity
value_type = max
[]
[inlet_V_min]
type = NekSideExtremeValue
boundary = '1'
field = velocity
value_type = min
[]
[outlet_V_max]
type = NekSideExtremeValue
boundary = '2'
field = velocity
value_type = max
[]
[outlet_V_min]
type = NekSideExtremeValue
boundary = '2'
field = velocity
value_type = min
[]
[inlet_T_max]
type = NekSideExtremeValue
boundary = '1'
field = temperature
value_type = max
[]
[inlet_T_min]
type = NekSideExtremeValue
boundary = '1'
field = temperature
value_type = min
[]
[outlet_T_max]
type = NekSideExtremeValue
boundary = '2'
field = temperature
value_type = max
[]
[outlet_T_min]
type = NekSideExtremeValue
boundary = '2'
field = temperature
value_type = min
[]
[P_check]
type = ParsedPostprocessor
function = 'inlet_P - outlet_P - dP'
pp_names = 'inlet_P outlet_P dP'
[]
[]
[MultiApps]
[sub]
type = FullSolveMultiApp
input_files = 'cardinal_sub.i'
[]
[]
[Transfers]
[toNekRS_velocity_trans]
type = MultiAppPostprocessorTransfer
from_multi_app = sub
reduction_type = average
from_postprocessor = toNekRS_velocity
to_postprocessor = inlet_V
[]
[toNekRS_temperature_trans]
type = MultiAppPostprocessorTransfer
from_multi_app = sub
reduction_type = average
from_postprocessor = toNekRS_temperature
to_postprocessor = inlet_T
[]
[]
[Outputs]
csv = true
[]
(test/tests/postprocessors/nek_point_value/points_nondimensional.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
nondimensional = true
L_ref = 5.0
U_ref = 0.2
T_ref = 10.0
dT_ref = 200.0
rho_0 = 1000
Cp_0 = 3000
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 5.0
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[temp]
type = NekPointValue
field = temperature
point = '0.25 0.3 0.27'
[]
[vx]
type = NekPointValue
field = velocity_x
point = '0.25 0.3 0.27'
[]
[vy]
type = NekPointValue
field = velocity_y
point = '0.25 0.3 0.27'
[]
[vz]
type = NekPointValue
field = velocity_z
point = '0.25 0.3 0.27'
[]
[vx2]
type = NekPointValue
field = velocity_x_squared
point = '0.25 0.3 0.27'
[]
[vy2]
type = NekPointValue
field = velocity_y_squared
point = '0.25 0.3 0.27'
[]
[vz2]
type = NekPointValue
field = velocity_z_squared
point = '0.25 0.3 0.27'
[]
[vel]
type = NekPointValue
field = velocity
point = '0.25 0.3 0.27'
[]
[p]
type = NekPointValue
field = pressure
point = '0.25 0.3 0.27'
[]
[scalar01]
type = NekPointValue
field = scalar01
point = '0.25 0.3 0.27'
[]
[scalar02]
type = NekPointValue
field = scalar02
point = '0.25 0.3 0.27'
[]
[scalar03]
type = NekPointValue
field = scalar03
point = '0.25 0.3 0.27'
[]
[]
[Outputs]
csv = true
[]
(test/tests/userobjects/hexagonal_gap_layered/normals/nek.i)
gap_thickness = ${fparse 0.05 * 7.646e-3}
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'velocity'
[]
[AuxVariables]
# These are just for visualizing the average velocity component with Glyphs in paraview;
# the result of the 'vol_avg' user object will be represented as a vector "uo_" with 3 components
[uo_x]
family = MONOMIAL
order = CONSTANT
[]
[uo_y]
family = MONOMIAL
order = CONSTANT
[]
[uo_z]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo_x]
type = NekSpatialBinComponentAux
variable = uo_x
user_object = avg_velocity_component
component = 0
[]
[uo_y]
type = NekSpatialBinComponentAux
variable = uo_y
user_object = avg_velocity_component
component = 1
[]
[uo_z]
type = NekSpatialBinComponentAux
variable = uo_z
user_object = avg_velocity_component
component = 2
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelGapBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[avg_velocity_component]
type = NekBinnedPlaneAverage
bins = 'subchannel_binning'
field = velocity_component
velocity_component = normal
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_velocity_component
to_multi_app = subchannel
variable = avg_velocity_component
[]
[uox_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_x
variable = uo_x
search_value_conflicts = false
[]
[uoy_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_y
variable = uo_y
search_value_conflicts = false
[]
[uoz_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_z
variable = uo_z
search_value_conflicts = false
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(tutorials/msfr/nek.i)
Re = 4.8e4 # (-)
mu = 0.011266321 # Pa-s
rho = 4147.3 # kg/m3
[Mesh]
type = NekRSMesh
volume = true
order = SECOND
[]
[Problem]
type = NekRSProblem
casename = 'msfr'
output = 'temperature'
synchronization_interval = parent_app
nondimensional = true
L_ref = 1.0
U_ref = ${fparse Re * mu / rho}
T_ref = ${fparse 625.0 + 273.15}
dT_ref = 100.0
rho_0 = ${rho}
Cp_0 = 1524.86 # J/kg/K
normalization_abs_tol = 1e6
normalization_rel_tol = 1e-3
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
min_dt = 1e-10
[]
[]
[Outputs]
exodus = true
hide = 'source_integral'
[]
(test/tests/nek_errors/no_temp_var/nek.i)
[Mesh]
type = NekRSMesh
boundary = '6'
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_temp/first_order/nek_volume.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = FIRST
volume = true
[]
[AuxVariables]
[analytic]
[]
[error_temp]
order = CONSTANT
family = MONOMIAL
[]
[difference]
[]
[]
[ICs]
[analytic]
type = FunctionIC
variable = analytic
function = analytic
[]
[]
[AuxKernels]
[error_temp]
type = ElementL2ErrorFunctionAux
variable = error_temp
coupled_variable = temp
function = analytic
[]
[difference]
type = ParsedAux
variable = difference
coupled_variables = 'analytic temp'
expression = 'temp-analytic'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Functions]
[analytic]
type = ParsedFunction
expression = 'exp(x)+sin(y)+x*y*z'
[]
[]
[Postprocessors]
[l2_error_in_nek_temp]
type = ElementL2Error
variable = temp
function = analytic
[]
[max_diff]
type = NodalExtremeValue
variable = difference
value_type = max
[]
[min_diff]
type = NodalExtremeValue
variable = difference
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
hide = 'source_integral heat_source'
[]
(test/tests/postprocessors/nek_weighted_side_average/nek.i)
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[mdot_side1]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '1'
[]
[mdot_side2]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '2'
[]
[mdot_side3]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '3'
[]
[mdot_side4]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '4'
[]
[mdot_side5]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '5'
[]
[mdot_side6]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '6'
[]
[weighted_T_side1]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '1'
[]
[weighted_T_side2]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '2'
[]
[weighted_T_side3]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '3'
[]
[weighted_T_side4]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '4'
[]
[weighted_T_side5]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '5'
[]
[weighted_T_side6]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '6'
[]
[]
(test/tests/postprocessors/nek_side_extrema/nek_p.i)
[Problem]
type = NekRSProblem
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[max_pressure_side1]
type = NekSideExtremeValue
field = pressure
boundary = '1'
value_type = max
[]
[max_pressure_side2]
type = NekSideExtremeValue
field = pressure
boundary = '2'
value_type = max
[]
[max_pressure_side3]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = max
[]
[max_pressure_side4]
type = NekSideExtremeValue
field = pressure
boundary = '4'
value_type = max
[]
[max_pressure_side5]
type = NekSideExtremeValue
field = pressure
boundary = '5'
value_type = max
[]
[max_pressure_side6]
type = NekSideExtremeValue
field = pressure
boundary = '6'
value_type = max
[]
[max_pressure_side7]
type = NekSideExtremeValue
field = pressure
boundary = '7'
value_type = max
[]
[max_pressure_side8]
type = NekSideExtremeValue
field = pressure
boundary = '8'
value_type = max
[]
[min_pressure_side1]
type = NekSideExtremeValue
field = pressure
boundary = '1'
value_type = min
[]
[min_pressure_side2]
type = NekSideExtremeValue
field = pressure
boundary = '2'
value_type = min
[]
[min_pressure_side3]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = min
[]
[min_pressure_side4]
type = NekSideExtremeValue
field = pressure
boundary = '4'
value_type = min
[]
[min_pressure_side5]
type = NekSideExtremeValue
field = pressure
boundary = '5'
value_type = min
[]
[min_pressure_side6]
type = NekSideExtremeValue
field = pressure
boundary = '6'
value_type = min
[]
[min_pressure_side7]
type = NekSideExtremeValue
field = pressure
boundary = '7'
value_type = min
[]
[min_pressure_side8]
type = NekSideExtremeValue
field = pressure
boundary = '8'
value_type = min
[]
[]
(test/tests/cht/nondimensional/nek_exact.i)
[Problem]
type = NekRSProblem
casename = 'sfr_pin'
# This input is run in nondimensional form to verify that all the postprocessors
# and data transfers in/out of nekRS are properly dimensionalized.
nondimensional = true
U_ref = 0.0950466
T_ref = 628.15
dT_ref = 50.0
L_ref = 0.908e-2
rho_0 = 834.5
Cp_0 = 1228.0
[]
[Mesh]
type = NekRSMesh
boundary = '1'
exact = true
# nekRS runs in non-dimensional form, which means that we shrunk the mesh
# from physical units of meters to our characteristic scale of 0.908e-2 m
# (the pin pitch, arbitrarily chosen). That means that we must multiply
# the nekRS mesh by 0.908e-2 to get back in units of meters that BISON is
# running in.
scaling = 0.908e-2
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
# pressure is not a reliable quantity to compare in a short, few-timestep regression test.
# This line can be uncommented for comparing with the dimensional version.
inactive = 'avg_pressure_1 avg_pressure_vol max_p max_p_in min_p_in pressure_1 pressure_vol'
[synchronization_in]
type = Receiver
[]
# side integral
[area_1]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[pressure_1]
type = NekSideIntegral
field = pressure
boundary = '1'
[]
[temperature_1]
type = NekSideIntegral
field = temperature
boundary = '1'
[]
# side average
[avg_area_1]
type = NekSideAverage
field = unity
boundary = '1'
[]
[avg_pressure_1]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[avg_temperature_1]
type = NekSideAverage
field = temperature
boundary = '1'
[]
# volume integral
[volume]
type = NekVolumeIntegral
field = unity
[]
[pressure_vol]
type = NekVolumeIntegral
field = pressure
[]
[temperature_vol]
type = NekVolumeIntegral
field = temperature
[]
# volume average
[avg_volume]
type = NekVolumeAverage
field = unity
[]
[avg_pressure_vol]
type = NekVolumeAverage
field = pressure
[]
[avg_temperature_vol]
type = NekVolumeAverage
field = temperature
[]
# heat flux integral
[nek_flux]
type = NekHeatFluxIntegral
boundary = '1'
[]
# mass flux weighted integral
[inlet_mdot]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '3'
execute_on = initial
[]
[outlet_T]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '4'
[]
[inlet_P]
type = NekMassFluxWeightedSideIntegral
field = pressure
boundary = '4'
[]
# mass flux weighted integral
[inlet_mdot_avg]
type = NekMassFluxWeightedSideAverage
field = unity
boundary = '3'
execute_on = initial
[]
[outlet_T_avg]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '4'
[]
[inlet_P_avg]
type = NekMassFluxWeightedSideAverage
field = pressure
boundary = '4'
[]
# extreme value postprocessors - VOLUME
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[max_p]
type = NekVolumeExtremeValue
field = pressure
value_type = max
[]
[min_p]
type = NekVolumeExtremeValue
field = pressure
value_type = min
[]
[max_1]
type = NekVolumeExtremeValue
field = unity
value_type = max
[]
[min_1]
type = NekVolumeExtremeValue
field = unity
value_type = min
[]
# extreme value postprocessors - SIDE
[max_T_out]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = max
[]
[min_T_out]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = min
[]
[max_p_in]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = max
[]
[min_p_in]
type = NekSideExtremeValue
field = pressure
boundary = '3'
value_type = min
[]
[max_1_in]
type = NekSideExtremeValue
field = unity
boundary = '3'
value_type = max
[]
[min_1_in]
type = NekSideExtremeValue
field = unity
boundary = '3'
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
csv = true
[screen]
type = Console
hide = 'synchronization_in'
[]
[]
(test/tests/conduction/identical_interface/pyramid/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[heat_flux]
type = NekHeatFluxIntegral
boundary = '2'
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(tutorials/sfr_7pin/nek.i)
[Mesh]
type = NekRSMesh
boundary = '1 2'
[]
[Problem]
type = NekRSProblem
casename = 'sfr_7pin'
synchronization_interval = parent_app
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
[Postprocessors]
[pin_flux_in_nek]
type = NekHeatFluxIntegral
boundary = '1'
[]
[duct_flux_in_nek]
type = NekHeatFluxIntegral
boundary = '2'
[]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
(test/tests/userobjects/gap/dimensional/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature pressure velocity'
[]
[AuxVariables]
[area]
family = MONOMIAL
order = CONSTANT
[]
[avg_T]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[avg_v]
family = MONOMIAL
order = CONSTANT
[]
[integral_T]
family = MONOMIAL
order = CONSTANT
[]
[integral_p]
family = MONOMIAL
order = CONSTANT
[]
[integral_v]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[area]
type = SpatialUserObjectAux
variable = area
user_object = area
[]
[avg_T]
type = SpatialUserObjectAux
variable = avg_T
user_object = avg_T
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
[]
[avg_v]
type = SpatialUserObjectAux
variable = avg_v
user_object = avg_v
[]
[integral_T]
type = SpatialUserObjectAux
variable = integral_T
user_object = integral_T
[]
[integral_p]
type = SpatialUserObjectAux
variable = integral_p
user_object = integral_p
[]
[integral_v]
type = SpatialUserObjectAux
variable = integral_v
user_object = integral_v
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[area]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = unity
[]
[avg_T]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[avg_p]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[avg_v]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[integral_T]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[integral_p]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[integral_v]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_T
to_multi_app = subchannel
variable = avg_T
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_p
to_multi_app = subchannel
variable = avg_p
[]
[uo3_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_v
to_multi_app = subchannel
variable = avg_v
[]
[uo4_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_T
to_multi_app = subchannel
variable = integral_T
[]
[uo5_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_p
to_multi_app = subchannel
variable = integral_p
[]
[uo6_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_v
to_multi_app = subchannel
variable = integral_v
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
file_base = nek_dim
[]
(tutorials/pebble_67/nek.i)
Re = 1460.0
dp = 0.06
cylinder_diameter = ${fparse 4.4 * dp}
rho = 3.645
Cp = 3121.0
mu = 2.93e-5
power = 2400.0
inlet_area = ${fparse pi * cylinder_diameter^2 / 4.0}
[Mesh]
type = NekRSMesh
boundary = 4
scaling = ${dp}
[]
[Problem]
type = NekRSProblem
casename = 'pb67'
output = 'velocity'
has_heat_source = false
n_usrwrk_slots = 2
nondimensional = true
L_ref = ${dp}
U_ref = ${fparse Re * mu / rho / dp}
T_ref = 523.0
dT_ref = ${fparse power * dp / Re / inlet_area / mu / Cp}
rho_0 = ${rho}
Cp_0 = ${Cp}
synchronization_interval = parent_app
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
interval = 100
[]
[Postprocessors]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[average_nek_pebble_T]
type = NekSideAverage
boundary = '4'
field = temperature
[]
[]
(test/tests/postprocessors/nek_usrwrk_boundary_integral/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[usrwrk]
type = NekUsrWrkBoundaryIntegral
usrwrk_slot = 11
boundary = '1'
[]
[]
(test/tests/userobjects/subchannel_layered/wrong_type.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelGapBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/userobjects/hexagonal_gap_layered/type_error.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[axial_bins]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[bins2]
type = SpatialUserObjectAux
variable = axial_bins
user_object = axial_binning
[]
[]
[UserObjects]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[vol_avg]
type = NekBinnedPlaneIntegral
bins = 'axial_binning'
field = unity
gap_thickness = 0.01
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_errors/invalid_settings/nek_bc.i)
# The mesh file used for nekRS (brick.re2) has six sidesets numbered
# as 1, 2, 3, 4, 5, 6. In the nekRS input file (brick.par), we set
# these six boundaries to have insulated, insulated, specified flux,
# insulated, insulated, and insulated boundary conditions, respectively.
# Based on the data transfers assumed in/out from nekRS, we should throw
# an error if a flux boundary condition is not specified on the boundary
# we set for NekRSMesh, because otherwise that heat flux condition would
# never get used.
[Mesh]
type = NekRSMesh
boundary = '2'
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/sockeye_coupling/sockeye_sub/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
# We just want to check that Cardinal can run Sockeye as a sub-app.
# We omit all transfers just to check that the code executes.
[MultiApps]
[sockeye]
type = TransientMultiApp
app_type = SockeyeApp
input_files = 'flow_only_convection.i'
execute_on = timestep_end
[]
[]
[Outputs]
hide = 'flux_integral'
[]
(test/tests/nek_mesh/first_order/nek_volume.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = FIRST
volume = true
[]
# only here to avoid a re-gold
[Variables]
[dummy]
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
hide = 'source_integral temp heat_source'
[]
# The points provided to these postprocessors are the centroids of the elements that
# we wish to print the node coordinates for.
[Postprocessors]
[num_elems]
type = NekMeshInfoPostprocessor
test_type = num_elems
[]
[num_nodes]
type = NekMeshInfoPostprocessor
test_type = num_nodes
[]
# coordinates of nodes of element 0
[elem0_node0_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 0
test_type = node_x
[]
[elem0_node0_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 0
test_type = node_y
[]
[elem0_node0_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 0
test_type = node_z
[]
[elem0_node1_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 1
test_type = node_x
[]
[elem0_node1_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 1
test_type = node_y
[]
[elem0_node1_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 1
test_type = node_z
[]
[elem0_node2_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 2
test_type = node_x
[]
[elem0_node2_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 2
test_type = node_y
[]
[elem0_node2_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 2
test_type = node_z
[]
[elem0_node3_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 3
test_type = node_x
[]
[elem0_node3_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 3
test_type = node_y
[]
[elem0_node3_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 3
test_type = node_z
[]
[elem0_node4_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 4
test_type = node_x
[]
[elem0_node4_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 4
test_type = node_y
[]
[elem0_node4_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 4
test_type = node_z
[]
[elem0_node5_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 5
test_type = node_x
[]
[elem0_node5_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 5
test_type = node_y
[]
[elem0_node5_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 5
test_type = node_z
[]
[elem0_node6_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 6
test_type = node_x
[]
[elem0_node6_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 6
test_type = node_y
[]
[elem0_node6_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 6
test_type = node_z
[]
[elem0_node7_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 7
test_type = node_x
[]
[elem0_node7_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 7
test_type = node_y
[]
[elem0_node7_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 7
test_type = node_z
[]
# coordinates of nodes of element 24
[elem24_node0_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 0
test_type = node_x
[]
[elem24_node0_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 0
test_type = node_y
[]
[elem24_node0_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 0
test_type = node_z
[]
[elem24_node1_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 1
test_type = node_x
[]
[elem24_node1_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 1
test_type = node_y
[]
[elem24_node1_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 1
test_type = node_z
[]
[elem24_node2_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 2
test_type = node_x
[]
[elem24_node2_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 2
test_type = node_y
[]
[elem24_node2_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 2
test_type = node_z
[]
[elem24_node3_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 3
test_type = node_x
[]
[elem24_node3_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 3
test_type = node_y
[]
[elem24_node3_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 3
test_type = node_z
[]
[elem24_node4_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 4
test_type = node_x
[]
[elem24_node4_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 4
test_type = node_y
[]
[elem24_node4_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 4
test_type = node_z
[]
[elem24_node5_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 5
test_type = node_x
[]
[elem24_node5_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 5
test_type = node_y
[]
[elem24_node5_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 5
test_type = node_z
[]
[elem24_node6_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 6
test_type = node_x
[]
[elem24_node6_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 6
test_type = node_y
[]
[elem24_node6_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 6
test_type = node_z
[]
[elem24_node7_x]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 7
test_type = node_x
[]
[elem24_node7_y]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 7
test_type = node_y
[]
[elem24_node7_z]
type = NekMeshInfoPostprocessor
point = '0.0562661952 -0.0652543308 0.41949849'
node = 7
test_type = node_z
[]
# coordinates of nodes of element 147
[elem147_node0_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 0
test_type = node_x
[]
[elem147_node0_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 0
test_type = node_y
[]
[elem147_node0_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 0
test_type = node_z
[]
[elem147_node1_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 1
test_type = node_x
[]
[elem147_node1_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 1
test_type = node_y
[]
[elem147_node1_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 1
test_type = node_z
[]
[elem147_node2_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 2
test_type = node_x
[]
[elem147_node2_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 2
test_type = node_y
[]
[elem147_node2_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 2
test_type = node_z
[]
[elem147_node3_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 3
test_type = node_x
[]
[elem147_node3_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 3
test_type = node_y
[]
[elem147_node3_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 3
test_type = node_z
[]
[elem147_node4_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 4
test_type = node_x
[]
[elem147_node4_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 4
test_type = node_y
[]
[elem147_node4_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 4
test_type = node_z
[]
[elem147_node5_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 5
test_type = node_x
[]
[elem147_node5_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 5
test_type = node_y
[]
[elem147_node5_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 5
test_type = node_z
[]
[elem147_node6_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 6
test_type = node_x
[]
[elem147_node6_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 6
test_type = node_y
[]
[elem147_node6_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 6
test_type = node_z
[]
[elem147_node7_x]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 7
test_type = node_x
[]
[elem147_node7_y]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 7
test_type = node_y
[]
[elem147_node7_z]
type = NekMeshInfoPostprocessor
point = '0.196111078 -0.0212007768 -0.00738034173'
node = 7
test_type = node_z
[]
[]
(test/tests/conduction/nonidentical_volume/nondimensional/nek.i)
[Problem]
type = NekRSProblem
casename = 'cylinder'
nondimensional = true
T_ref = 500.0
dT_ref = 50.0
rho_0 = 5.0
Cp_0 = 6.0
L_ref = 0.5
U_ref = 1.0
[]
[Mesh]
type = NekRSMesh
volume = true
# change to SECOND to exactly match the verification case in ../cylinder; we use
# FIRST here just to reduce the size of the gold file
order = FIRST
# nekRS runs in nondimensional form, so we need to adjust the mesh (in nondimensional
# coordinates) to the dimensional form expected by MOOSE
scaling = 0.5
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[avg_T_volume]
type = NekVolumeAverage
field = temperature
[]
[T_volume]
type = NekVolumeIntegral
field = temperature
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
# we can infer that these variables dont change by ensuring that 'temp' does not change,
# since these other two variables are boundary conditions and source terms for the energy equation
hide = 'heat_source'
[]
(test/tests/nek_errors/used_scratch/nek.i)
[Mesh]
type = NekRSMesh
boundary = '6'
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
hide = 'flux_integral'
[]
(test/tests/userobjects/interval/nek_synchronization.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'velocity'
nondimensional = true
L_ref = 2.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
synchronization_interval = constant
constant_interval = 3
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 2.0
[]
[Postprocessors]
[vz_in]
type = SideAverageValue
variable = 'vel_z'
boundary = '1'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
[]
(test/tests/nek_file_output/nek_as_sub_even/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/postprocessors/dimensionless_numbers/dimensional/ranks.i)
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
boundary = '3'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[ranks]
type = NekNumRanks
[]
[]
(test/tests/nek_file_output/usrwrk/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
usrwrk_output = '0 1'
usrwrk_output_prefix = 'aaa ccc'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/conduction/nonidentical_interface/cylinders/nek_mini.i)
[Problem]
type = NekRSProblem
casename = 'cylinder'
synchronization_interval = parent_app
[]
[Mesh]
type = NekRSMesh
boundary = '2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/conduction/nonidentical_interface/cylinders/nek.i)
[Problem]
type = NekRSProblem
casename = 'cylinder'
[]
[Mesh]
type = NekRSMesh
order = FIRST
boundary = '2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_temp_nek]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/postprocessors/nek_viscous_surface_force/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Functions]
[side1x]
type = ParsedFunction
expression = '20*(1+2)'
[]
[side1y]
type = ParsedFunction
expression = '20*(2+2)'
[]
[side1z]
type = ParsedFunction
expression = '20*(3+2)'
[]
[]
[AuxVariables]
[f1]
[]
[f2]
[]
[f3]
[]
[]
[AuxKernels]
[f1]
type = FunctionAux
variable = f1
function = side1x
[]
[f2]
type = FunctionAux
variable = f2
function = side1y
[]
[f3]
type = FunctionAux
variable = f3
function = side1z
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
hide = 'f1 f2 f3'
[]
[Postprocessors]
[viscous_1]
type = NekViscousSurfaceForce
boundary = '1'
mesh = 'fluid'
[]
[compare_x]
type = SideIntegralVariablePostprocessor
variable = f1
boundary = '1'
[]
[compare_y]
type = SideIntegralVariablePostprocessor
variable = f2
boundary = '1'
[]
[compare_z]
type = SideIntegralVariablePostprocessor
variable = f3
boundary = '1'
[]
[sum]
type = ParsedPostprocessor
expression = 'sqrt(compare_x*compare_x+compare_y*compare_y+compare_z*compare_z)'
pp_names = 'compare_x compare_y compare_z'
[]
[]
(test/tests/nek_errors/invalid_field/nek_no_temp.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
output = 'temperature'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/postprocessors/nek_pressure_surface_force/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[pressure_x]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'x'
mesh = 'fluid'
[]
[pressure_y]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'y'
mesh = 'fluid'
[]
[pressure_z]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'z'
mesh = 'fluid'
[]
[pressure_total]
type = NekPressureSurfaceForce
boundary = '1 2 3 4 5 6'
component = 'total'
mesh = 'fluid'
[]
# These are added to compare by hand
[pressure_x_3]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '3'
[]
[pressure_x_4]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '4'
[]
[pressure_x_comp]
type = DifferencePostprocessor
value1 = pressure_x_3
value2 = pressure_x_4
[]
[pressure_y_1]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '1'
[]
[pressure_y_2]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '2'
[]
[pressure_y_comp]
type = DifferencePostprocessor
value1 = pressure_y_1
value2 = pressure_y_2
[]
[pressure_z_6]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '6'
[]
[pressure_z_5]
type = SideIntegralVariablePostprocessor
variable = P
boundary = '5'
[]
[pressure_z_comp]
type = DifferencePostprocessor
value1 = pressure_z_6
value2 = pressure_z_5
[]
[]
(test/tests/nek_temp/second_order/nek_volume.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
[]
[AuxVariables]
[analytic]
[]
[error_temp]
order = CONSTANT
family = MONOMIAL
[]
[difference]
[]
[]
[ICs]
[analytic]
type = FunctionIC
variable = analytic
function = analytic
[]
[]
[AuxKernels]
[error_temp]
type = ElementL2ErrorFunctionAux
variable = error_temp
coupled_variable = temp
function = analytic
[]
[difference]
type = ParsedAux
variable = difference
coupled_variables = 'analytic temp'
expression = 'temp-analytic'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Functions]
[analytic]
type = ParsedFunction
expression = 'exp(x)+sin(y)+x*y*z'
[]
[]
[Postprocessors]
[l2_error_in_nek_temp]
type = ElementL2Error
variable = temp
function = analytic
[]
[max_diff]
type = NodalExtremeValue
variable = difference
value_type = max
[]
[min_diff]
type = NodalExtremeValue
variable = difference
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
hide = 'source_integral heat_source'
[]
(test/tests/userobjects/side/nondimensional/nek.i)
[GlobalParams]
check_boundary_restricted = false
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 7.646e-3
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature pressure velocity'
nondimensional = true
L_ref = 7.646e-3
T_ref = 100.0
dT_ref = 50.0
U_ref = 2.0
rho_0 = 834.5
Cp_0 = 1228.0
[]
[AuxVariables]
[avg_T]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[avg_v]
family = MONOMIAL
order = CONSTANT
[]
[integral_T]
family = MONOMIAL
order = CONSTANT
[]
[integral_p]
family = MONOMIAL
order = CONSTANT
[]
[integral_v]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[avg_T]
type = SpatialUserObjectAux
variable = avg_T
user_object = avg_T
boundary = '2'
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
boundary = '2'
[]
[avg_v]
type = SpatialUserObjectAux
variable = avg_v
user_object = avg_v
boundary = '2'
[]
[integral_T]
type = SpatialUserObjectAux
variable = integral_T
user_object = integral_T
boundary = '2'
[]
[integral_p]
type = SpatialUserObjectAux
variable = integral_p
user_object = integral_p
boundary = '2'
[]
[integral_v]
type = SpatialUserObjectAux
variable = integral_v
user_object = integral_v
boundary = '2'
[]
[]
[UserObjects]
[x]
type = LayeredBin
direction = x
num_layers = 2
[]
[y]
type = LayeredBin
direction = y
num_layers = 2
[]
[z]
type = LayeredBin
direction = z
num_layers = 3
[]
[avg_T]
type = NekBinnedSideAverage
bins = 'x y z'
field = temperature
boundary = '2'
[]
[avg_p]
type = NekBinnedSideAverage
bins = 'x y z'
field = pressure
boundary = '2'
[]
[avg_v]
type = NekBinnedSideAverage
bins = 'x y z'
field = velocity
boundary = '2'
[]
[integral_T]
type = NekBinnedSideIntegral
bins = 'x y z'
field = temperature
boundary = '2'
[]
[integral_p]
type = NekBinnedSideIntegral
bins = 'x y z'
field = pressure
boundary = '2'
[]
[integral_v]
type = NekBinnedSideIntegral
bins = 'x y z'
field = velocity
boundary = '2'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/postprocessors/nek_point_value/points.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[temp]
type = NekPointValue
field = temperature
point = '0.25 0.3 0.27'
[]
[vx]
type = NekPointValue
field = velocity_x
point = '0.25 0.3 0.27'
[]
[vy]
type = NekPointValue
field = velocity_y
point = '0.25 0.3 0.27'
[]
[vz]
type = NekPointValue
field = velocity_z
point = '0.25 0.3 0.27'
[]
[vx2]
type = NekPointValue
field = velocity_x_squared
point = '0.25 0.3 0.27'
[]
[vy2]
type = NekPointValue
field = velocity_y_squared
point = '0.25 0.3 0.27'
[]
[vz2]
type = NekPointValue
field = velocity_z_squared
point = '0.25 0.3 0.27'
[]
[vel]
type = NekPointValue
field = velocity
point = '0.25 0.3 0.27'
[]
[p]
type = NekPointValue
field = pressure
point = '0.25 0.3 0.27'
[]
[scalar01]
type = NekPointValue
field = scalar01
point = '0.25 0.3 0.27'
[]
[scalar02]
type = NekPointValue
field = scalar02
point = '0.25 0.3 0.27'
[]
[scalar03]
type = NekPointValue
field = scalar03
point = '0.25 0.3 0.27'
[]
[]
[Outputs]
csv = true
[]
(test/tests/userobjects/layered_layered/3d.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
nondimensional = true
L_ref = 2.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 2.0
[]
[AuxVariables]
[uo]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo]
type = SpatialUserObjectAux
variable = uo
user_object = vol_integral
[]
[]
[UserObjects]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
[y_bins]
type = LayeredBin
direction = y
num_layers = 3
[]
[z_bins]
type = LayeredBin
direction = z
num_layers = 4
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'x_bins y_bins z_bins'
field = pressure
[]
[]
[VectorPostprocessors]
# from_uo gives exactly the same results as manually specifying the points in 'manually_provided'
[from_uo]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
[]
[manually_provided]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
points = '-0.66666667 -0.66666667 -3.0
-0.66666667 -0.66666667 -1.0
-0.66666667 -0.66666667 1.0
-0.66666667 -0.66666667 3.0
-0.66666667 0.0 -3.0
-0.66666667 0.0 -1.0
-0.66666667 0.0 1.0
-0.66666667 0.0 3.0
-0.66666667 0.66666667 -3.0
-0.66666667 0.66666667 -1.0
-0.66666667 0.66666667 1.0
-0.66666667 0.66666667 3.0
0.0 -0.66666667 -3.0
0.0 -0.66666667 -1.0
0.0 -0.66666667 1.0
0.0 -0.66666667 3.0
0.0 0.0 -3.0
0.0 0.0 -1.0
0.0 0.0 1.0
0.0 0.0 3.0
0.0 0.66666667 -3.0
0.0 0.66666667 -1.0
0.0 0.66666667 1.0
0.0 0.66666667 3.0
0.66666667 -0.66666667 -3.0
0.66666667 -0.66666667 -1.0
0.66666667 -0.66666667 1.0
0.66666667 -0.66666667 3.0
0.66666667 0.0 -3.0
0.66666667 0.0 -1.0
0.66666667 0.0 1.0
0.66666667 0.0 3.0
0.66666667 0.66666667 -3.0
0.66666667 0.66666667 -1.0
0.66666667 0.66666667 1.0
0.66666667 0.66666667 3.0'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
[]
(test/tests/deformation/vol-areas/nek.i)
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
parallel_type = replicated
displacements = 'disp_x disp_y disp_z'
[]
[Problem]
type = NekRSProblem
casename = 'nekbox'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[Quadrature]
type = GAUSS_LOBATTO
order = SECOND
[]
[]
[Postprocessors]
[nekbdry_icar1]
type = AreaPostprocessor
boundary = '1'
use_displaced_mesh = true
execute_on = INITIAL
[]
[nekbdry_ar1]
type = AreaPostprocessor
boundary = '1'
use_displaced_mesh = true
[]
[nekbdry_ar2]
type = AreaPostprocessor
boundary = '2'
use_displaced_mesh = true
[]
[nekbdry_ar3]
type = AreaPostprocessor
boundary = '3'
use_displaced_mesh = true
[]
[nekbdry_ar4]
type = AreaPostprocessor
boundary = '4'
use_displaced_mesh = true
[]
[nekbdry_ar5]
type = AreaPostprocessor
boundary = '5'
use_displaced_mesh = true
[]
[nekbdry_ar6]
type = AreaPostprocessor
boundary = '6'
use_displaced_mesh = true
[]
[]
[Outputs]
csv = true
execute_on = 'final'
# uncomment the temp_ansol to see that the solution matches very well
hide = 'source_integral heat_source'
[]
(test/tests/nek_standalone/from_restart/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
execute_on = 'final'
[]
[]
[Postprocessors]
[temp_average]
type = NekVolumeAverage
field = temperature
[]
[velocity_average]
type = NekVolumeAverage
field = velocity
[]
[x_velocity_average]
type = NekVolumeAverage
field = velocity_x
[]
[y_velocity_average]
type = NekVolumeAverage
field = velocity_y
[]
[z_velocity_average]
type = NekVolumeAverage
field = velocity_z
[]
[]
(test/tests/nek_standalone/adaptive_dt/nek_nondim.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
nondimensional = true
U_ref = 0.1
L_ref = 1.0
rho_0 = 1.0
Cp_0 = 1.0
[]
[Mesh]
type = NekRSMesh
scaling = 1.0
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
[]
[]
[Postprocessors]
[time]
type = TimePostprocessor
execute_on = 'initial timestep_begin'
[]
[]
(test/tests/nek_standalone/lowMach/nek.i)
[Mesh]
type = NekRSMesh
volume = true
order = SECOND
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'lowMach'
output = 'pressure velocity temperature'
# We omit the non-dimensional settings here in order to just extract the
# non-dimensional solution as-is, without dimensionalizing it.
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
# All the following postprocessors are applying operations both (a) directly to the NekRS
# solution arrays, and (b) to the variables extracted with the 'outputs = ...' syntax.
# Rather than check the actual values of these postprocessors (which might change if the
# NekRS development team changes the nature of their CI tests), we can just check that
# the difference between the Nek-style postprocessors from the MOOSE-style postprocessors
# (acting on the extract solution) are nearly zero. We only check the absolute value of
# the min/max volume values for Vx, temperature, and pressure because those values are printed to
# the screen and offer quick confirmation of any changes that are due to changes in NekRS itself.
[max_Vx]
type = NekVolumeExtremeValue
field = velocity_x
value_type = max
[]
[max_Vx_output]
type = NodalExtremeValue
variable = vel_x
value_type = max
[]
[max_Vx_diff]
type = DifferencePostprocessor
value1 = max_Vx
value2 = max_Vx_output
[]
[min_Vx]
type = NekVolumeExtremeValue
field = velocity_x
value_type = min
[]
[min_Vx_output]
type = NodalExtremeValue
variable = vel_x
value_type = min
[]
[min_Vx_diff]
type = DifferencePostprocessor
value1 = min_Vx
value2 = min_Vx_output
[]
[max_p]
type = NekVolumeExtremeValue
field = pressure
value_type = max
[]
[max_p_output]
type = NodalExtremeValue
variable = P
value_type = max
[]
[max_p_diff]
type = DifferencePostprocessor
value1 = max_p
value2 = max_p_output
[]
[min_p]
type = NekVolumeExtremeValue
field = pressure
value_type = min
[]
[min_p_output]
type = NodalExtremeValue
variable = P
value_type = min
[]
[min_p_diff]
type = DifferencePostprocessor
value1 = min_p
value2 = min_p_output
[]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[max_T_output]
type = NodalExtremeValue
variable = temp
value_type = max
[]
[max_T_diff]
type = DifferencePostprocessor
value1 = max_T
value2 = max_T_output
[]
[min_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[min_T_output]
type = NodalExtremeValue
variable = temp
value_type = min
[]
[min_T_diff]
type = DifferencePostprocessor
value1 = min_T
value2 = min_T_output
[]
[area]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_output]
type = AreaPostprocessor
boundary = '1'
[]
[area_diff]
type = DifferencePostprocessor
value1 = area
value2 = area_output
[]
[volume]
type = NekVolumeIntegral
field = unity
[]
[volume_output]
type = VolumePostprocessor
[]
[volume_diff]
type = DifferencePostprocessor
value1 = volume
value2 = volume_output
[]
[max_T_side]
type = NekSideExtremeValue
field = temperature
value_type = max
boundary = '1'
[]
[max_T_side_output]
type = NodalExtremeValue
variable = temp
value_type = max
boundary = '1'
[]
[max_T_side_diff]
type = DifferencePostprocessor
value1 = max_T_side
value2 = max_T_side_output
[]
[min_T_side]
type = NekSideExtremeValue
field = temperature
value_type = min
boundary = '1'
[]
[min_T_side_output]
type = NodalExtremeValue
variable = temp
value_type = min
boundary = '1'
[]
[min_T_side_diff]
type = DifferencePostprocessor
value1 = min_T_side
value2 = min_T_side_output
[]
[max_Vx_side]
type = NekSideExtremeValue
field = velocity_x
value_type = max
boundary = '1'
[]
[max_Vx_side_output]
type = NodalExtremeValue
variable = vel_x
value_type = max
boundary = '1'
[]
[max_Vx_side_diff]
type = DifferencePostprocessor
value1 = max_Vx_side
value2 = max_Vx_side_output
[]
[min_Vx_side]
type = NekSideExtremeValue
field = velocity_x
value_type = min
boundary = '1'
[]
[min_Vx_side_output]
type = NodalExtremeValue
variable = vel_x
value_type = min
boundary = '1'
[]
[min_Vx_side_diff]
type = DifferencePostprocessor
value1 = min_Vx_side
value2 = min_Vx_side_output
[]
[max_p_side]
type = NekSideExtremeValue
field = pressure
value_type = max
boundary = '1'
[]
[max_p_side_output]
type = NodalExtremeValue
variable = P
value_type = max
boundary = '1'
[]
[min_p_side_diff]
type = DifferencePostprocessor
value1 = min_p_side
value2 = min_p_side_output
[]
[min_p_side]
type = NekSideExtremeValue
field = pressure
value_type = min
boundary = '1'
[]
[min_p_side_output]
type = NodalExtremeValue
variable = P
value_type = min
boundary = '1'
[]
[max_p_side_diff]
type = DifferencePostprocessor
value1 = max_p_side
value2 = max_p_side_output
[]
[avg_T]
type = NekVolumeAverage
field = temperature
[]
[avg_T_output]
type = ElementAverageValue
variable = temp
[]
[avg_T_diff]
type = DifferencePostprocessor
value1 = avg_T
value2 = avg_T_output
[]
[avg_Vx]
type = NekVolumeAverage
field = velocity_x
[]
[avg_Vx_output]
type = ElementAverageValue
variable = vel_x
[]
[avg_Vx_diff]
type = DifferencePostprocessor
value1 = avg_Vx
value2 = avg_Vx_output
[]
[avg_T_side]
type = NekSideAverage
field = temperature
boundary = '1'
[]
[avg_T_side_output]
type = SideAverageValue
variable = temp
boundary = '1'
[]
[avg_T_side_diff]
type = DifferencePostprocessor
value1 = avg_T_side
value2 = avg_T_side_output
[]
[avg_Vx_side]
type = NekSideAverage
field = velocity_x
boundary = '1'
[]
[avg_Vx_side_output]
type = SideAverageValue
variable = vel_x
boundary = '1'
[]
[avg_Vx_side_diff]
type = DifferencePostprocessor
value1 = avg_Vx_side
value2 = avg_Vx_side_output
[]
[avg_p_side]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[avg_p_side_output]
type = SideAverageValue
variable = P
boundary = '1'
[]
[avg_p_side_diff]
type = DifferencePostprocessor
value1 = avg_p_side
value2 = avg_p_side_output
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
hide = 'max_Vx_output min_Vx_output max_p_output min_p_output area_output volume_output max_Vx_side max_Vx_side_output max_p_side max_p_side_output min_Vx_side min_Vx_side_output min_p_side min_p_side_output avg_Vx avg_Vx_output avg_Vx_side avg_Vx_side_output avg_p_side avg_p_side_output max_T_output min_T_output max_T_side max_T_side_output min_T_side min_T_side_output avg_T avg_T_output avg_T_side avg_T_side_output'
[]
(test/tests/nek_errors/invalid_bid_postprocessor/nek.i)
# The mesh file used for nekRS (brick.re2) has six sidesets numbered
# as 1, 2, 3, 4, 5, 6. Trying to construct the surface mesh corresponding
# to boundary 8 (a non-existent boundary ID) should throw an error.
[Mesh]
type = NekRSMesh
boundary = 1
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[area_side]
type = NekSideIntegral
field = temperature
boundary = 8
[]
[]
(test/tests/nek_errors/invalid_transfer_pp/nek.i)
[Problem]
type = NekRSProblem
synchronization_interval = parent_app
casename = 'cube'
[]
[Mesh]
type = NekRSMesh
boundary = '4'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/userobjects/hexagonal_gap_layered/normals/nek_axial.i)
gap_thickness = ${fparse 0.05 * 7.646e-3}
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'velocity'
[]
[AuxVariables]
# These are just for visualizing the average velocity component with Glyphs in paraview;
# the result of the 'vol_avg' user object will be represented as a vector "uo_" with 3 components
[uo_x]
family = MONOMIAL
order = CONSTANT
[]
[uo_y]
family = MONOMIAL
order = CONSTANT
[]
[uo_z]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo_x]
type = NekSpatialBinComponentAux
variable = uo_x
user_object = avg_velocity_component
component = 0
[]
[uo_y]
type = NekSpatialBinComponentAux
variable = uo_y
user_object = avg_velocity_component
component = 1
[]
[uo_z]
type = NekSpatialBinComponentAux
variable = uo_z
user_object = avg_velocity_component
component = 2
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredGapBin
direction = z
num_layers = 6
[]
[avg_velocity_component]
type = NekBinnedPlaneAverage
bins = 'subchannel_binning axial_binning'
field = velocity_component
velocity_component = normal
gap_thickness = ${gap_thickness}
map_space_by_qp = true
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel_axial.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uox_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_x
variable = uo_x
search_value_conflicts = false
[]
[uoy_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_y
variable = uo_y
search_value_conflicts = false
[]
[uoz_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel
source_variable = uo_z
variable = uo_z
search_value_conflicts = false
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/postprocessors/dimensionless_numbers/nondimensional/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
nondimensional = true
L_ref = 0.25
U_ref = 0.001
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
boundary = '3'
scaling = 0.25
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
execute_on = 'final'
[]
[]
[Postprocessors]
[Pe]
type = PecletNumber
boundary = '1'
[]
[Re]
type = ReynoldsNumber
boundary = '1'
[]
[area]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[mdot]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '1'
[]
[inlet_v]
type = NekSideAverage
field = velocity
boundary = '1'
[]
[]
(doc/content/source/problems/smallest_input.i)
[Problem]
type = NekRSProblem
casename = 'fluid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2'
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(tutorials/subchannel/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature velocity'
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[subchannel_gap_binning]
type = HexagonalSubchannelGapBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 7
[]
[average_T]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
map_space_by_qp = true
[]
[average_T_gaps]
type = NekBinnedPlaneAverage
bins = 'subchannel_gap_binning axial_binning'
field = temperature
map_space_by_qp = true
gap_thickness = ${fparse 0.05 * 7.646e-3}
[]
[avg_gap_velocity]
type = NekBinnedPlaneAverage
bins = 'subchannel_gap_binning axial_binning'
field = velocity_component
velocity_component = normal
map_space_by_qp = true
gap_thickness = ${fparse 0.05 * 7.646e-3}
[]
[]
[AuxVariables]
# These are just for visualizing the average velocity component with Glyphs in paraview;
# the result of the 'avg_gap_velocity' user object will be represented as a vector "uo_" with 3 components
[uo_x]
family = MONOMIAL
order = CONSTANT
[]
[uo_y]
family = MONOMIAL
order = CONSTANT
[]
[uo_z]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo_x]
type = NekSpatialBinComponentAux
variable = uo_x
user_object = avg_gap_velocity
component = 0
[]
[uo_y]
type = NekSpatialBinComponentAux
variable = uo_y
user_object = avg_gap_velocity
component = 1
[]
[uo_z]
type = NekSpatialBinComponentAux
variable = uo_z
user_object = avg_gap_velocity
component = 2
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
sub_cycling = true
[]
[subchannel_gap]
type = TransientMultiApp
input_files = 'subchannel_gap.i'
execute_on = timestep_end
sub_cycling = true
[]
[]
[Transfers]
[uo_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = average_T
to_multi_app = subchannel
variable = average_T
[]
[uo_to_sub2]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = average_T_gaps
to_multi_app = subchannel_gap
variable = average_T
[]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_gap_velocity
to_multi_app = subchannel_gap
variable = avg_gap_velocity
[]
[uox_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel_gap
source_variable = uo_x
variable = uo_x
[]
[uoy_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = subchannel_gap
source_variable = uo_y
variable = uo_y
[]
[]
[VectorPostprocessors]
[avg_T]
type = SpatialUserObjectVectorPostprocessor
userobject = average_T
[]
[avg_T_gaps]
type = SpatialUserObjectVectorPostprocessor
userobject = average_T_gaps
[]
[avg_v_gaps]
type = SpatialUserObjectVectorPostprocessor
userobject = avg_gap_velocity
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
[]
(tutorials/other_apps/cardinal_sub.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'turbPipe'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/userobjects/subchannel_layered/user_component.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'velocity'
[]
[AuxVariables]
[velocity_component]
[]
# These are just for visualizing the average velocity component with Glyphs in paraview;
# the result of the 'vol_avg' user object will be represented as a vector "uo_" with 3 components
[uo_x]
family = MONOMIAL
order = CONSTANT
[]
[uo_y]
family = MONOMIAL
order = CONSTANT
[]
[uo_z]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[velocity_component] # actual velocity component computed directly from interpolated nekRS velocity fields
type = ParsedAux
variable = velocity_component
expression = '(0.1*vel_x-0.2*vel_y+0.3*vel_z)/sqrt(0.1*0.1+0.2*0.2+0.3*0.3)'
coupled_variables = 'vel_x vel_y vel_z'
execute_on = 'timestep_end nonlinear linear'
[]
[uo_x]
type = NekSpatialBinComponentAux
variable = uo_x
user_object = vol_avg
component = 0
[]
[uo_y]
type = NekSpatialBinComponentAux
variable = uo_y
user_object = vol_avg
component = 1
[]
[uo_z]
type = NekSpatialBinComponentAux
variable = uo_z
user_object = vol_avg
component = 2
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = velocity_component
velocity_component = user
velocity_direction = '0.1 -0.2 0.3'
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel_b.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = vol_avg
to_multi_app = subchannel
variable = vol_avg
[]
[uox_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
source_variable = uo_x
to_multi_app = subchannel
variable = uo_x
search_value_conflicts = false
[]
[uoy_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
source_variable = uo_y
to_multi_app = subchannel
variable = uo_y
search_value_conflicts = false
[]
[uoz_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
source_variable = uo_z
to_multi_app = subchannel
variable = uo_z
search_value_conflicts = false
[]
[analytic_to_sub]
type = MultiAppGeneralFieldNearestLocationTransfer
source_variable = velocity_component
to_multi_app = subchannel
variable = velocity_component
search_value_conflicts = false
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
# unhide and turn the number of time steps in the .par file to greater than 1 in order to see this
# match the user object
hide = 'velocity_component'
[]
(test/tests/userobjects/subchannel_layered/type_error.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[UserObjects]
[dummy]
type = NearestNodeNumberUO
point = '0.0 0.0 0.1'
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'dummy'
field = temperature
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/userobjects/radial_layered/1d.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'cylinder'
output = 'pressure'
nondimensional = true
L_ref = 5.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 5.0
[]
[AuxVariables]
[uo]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo]
type = SpatialUserObjectAux
variable = uo
user_object = vol_integral
[]
[]
[UserObjects]
[r_bins]
type = RadialBin
vertical_axis = z
nr = 5
rmin = 0.0
rmax = 1.0
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'r_bins'
field = pressure
[]
[]
[VectorPostprocessors]
# from_uo gives exactly the same results as manually specifying the points in 'manually_provided'
[from_uo]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
[]
[manually_provided]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
points = '0.1 0.0 0.0
0.3 0.0 0.0
0.5 0.0 0.0
0.7 0.0 0.0
0.9 0.0 0.0'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
[]
(test/tests/nek_mesh/sidesets/cube/nek_volume.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'cube'
[]
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
boundary = '1 2 3 4 5 6'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[area_side1_nek]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_side1_moose]
type = AreaPostprocessor
boundary = '1'
[]
[area_side2_nek]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_side2_moose]
type = AreaPostprocessor
boundary = '2'
[]
[area_side3_nek]
type = NekSideIntegral
field = unity
boundary = '3'
[]
[area_side3_moose]
type = AreaPostprocessor
boundary = '3'
[]
[area_side4_nek]
type = NekSideIntegral
field = unity
boundary = '4'
[]
[area_side4_moose]
type = AreaPostprocessor
boundary = '4'
[]
[area_side5_nek]
type = NekSideIntegral
field = unity
boundary = '5'
[]
[area_side5_moose]
type = AreaPostprocessor
boundary = '5'
[]
[area_side6_nek]
type = NekSideIntegral
field = unity
boundary = '6'
[]
[area_side6_moose]
type = AreaPostprocessor
boundary = '6'
[]
[]
(test/tests/deformation/mesh-velocity-areas/nek.i)
[Mesh]
type = NekRSMesh
order = SECOND
boundary = '2'
parallel_type = replicated
displacements = 'disp_x disp_y disp_z'
use_displaced_mesh =true
[]
[Problem]
type = NekRSProblem
has_heat_source = false
casename = 'pipe'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[Quadrature]
type = GAUSS_LOBATTO
order = SECOND
[]
[]
[Postprocessors]
[nek_area_initial]
type = NekSideIntegral
field = unity
boundary = '2'
execute_on = initial
[]
[nek_area]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[nek_diff]
type = DifferencePostprocessor
value1 = nek_area
value2 = nek_area_initial
[]
[moose_area_initial]
type = VolumePostprocessor # for a side-only mesh, this is area
execute_on = initial
use_displaced_mesh = true
[]
[moose_area]
type = VolumePostprocessor
use_displaced_mesh = true
[]
[moose_diff]
type = DifferencePostprocessor
value1 = moose_area
value2 = moose_area_initial
[]
[]
[Outputs]
csv = true
execute_on = 'final'
hide = 'flux_integral nek_area_initial nek_area moose_area_initial moose_area'
[]
(test/tests/nek_stochastic/errors/gap.i)
[Mesh]
type = NekRSMesh
boundary = '1'
volume = true
[]
[Problem]
type = NekRSProblem
n_usrwrk_slots = 7
casename = 'ethier'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
usrwrk_slot = 2
[]
[scalar2]
type = NekScalarValue
usrwrk_slot = 4
[]
[scalar3]
type = NekScalarValue
usrwrk_slot = 5
[]
[]
(test/tests/conduction/zero_flux/nek_disjoint.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
conserve_flux_by_sideset = true
[]
[Mesh]
type = NekRSMesh
boundary = '1 2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[flux1]
type = NekUsrWrkBoundaryIntegral
usrwrk_slot = 0
boundary = '1'
[]
[flux2]
type = NekUsrWrkBoundaryIntegral
usrwrk_slot = 0
boundary = '2'
[]
[]
(test/tests/nek_errors/invalid_field/nonlinear.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
output = 'temperature'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Variables]
[temp]
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_standalone/conj_ht/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'conj_ht'
output = 'temperature'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[Area_BC3_flow]
type = NekSideIntegral
boundary = '3'
field = unity
mesh = 'fluid'
[]
[Area_BC3_all]
type = NekSideIntegral
boundary = '3'
field = unity
mesh = 'all'
[]
[SideAverage_T_BC3_flow]
type = NekSideAverage
boundary = '3'
field = temperature
mesh = 'fluid'
[]
[SideAverage_T_BC3_all]
type = NekSideAverage
boundary = '3'
field = temperature
mesh = 'all'
[]
[HeatFluxIntegral_BC3_flow]
type = NekHeatFluxIntegral
boundary = '3'
mesh = 'fluid'
[]
[HeatFluxIntegral_BC3_all]
type = NekHeatFluxIntegral
boundary = '3'
mesh = 'all'
[]
[MassFlowRate_BC1_flow]
type = NekMassFluxWeightedSideIntegral
boundary = '1'
field = unity
mesh = 'fluid'
[]
[MassFlowRate_BC1_all]
type = NekMassFluxWeightedSideIntegral
boundary = '1'
field = unity
mesh = 'all'
[]
[MflowAvgTemp_BC2_flow]
type = NekMassFluxWeightedSideAverage
boundary = '2'
field = temperature
mesh = 'fluid'
[]
[MflowAvgTemp_BC2_all]
type = NekMassFluxWeightedSideAverage
boundary = '2'
field = temperature
mesh = 'all'
[]
[Reynolds_BC1_flow]
type = ReynoldsNumber
boundary = '1'
L_ref = 0.5
mesh = 'fluid'
[]
[Reynolds_BC1_all]
type = ReynoldsNumber
boundary = '1'
L_ref = 0.5
mesh = 'all'
[]
[Peclet_BC1_flow]
type = PecletNumber
boundary = '1'
L_ref = 0.5
mesh = 'fluid'
[]
[Peclet_BC1_all]
type = PecletNumber
boundary = '1'
L_ref = 0.5
mesh = 'all'
[]
#
# Volume post processors
#
[Vol_flow]
type = NekVolumeIntegral
field = unity
mesh = 'fluid'
[]
[Vol_all]
type = NekVolumeIntegral
field = unity
mesh = 'all'
[]
[maxVol_T_flow]
type = NekVolumeExtremeValue
field = temperature
value_type = max
mesh = 'fluid'
[]
[maxVol_T_all]
type = NekVolumeExtremeValue
field = temperature
value_type = max
mesh = 'all'
[]
[avgVol_T_flow]
type = NekVolumeAverage
field = temperature
mesh = 'fluid'
[]
[avgVol_T_all]
type = NekVolumeAverage
field = temperature
mesh = 'all'
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = final
[]
(test/tests/nek_standalone/ktauChannel/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'channel'
output = 'pressure velocity temperature'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
[]
[T_at_point]
type = PointValue
variable = temp
point = '4.0 -0.5 0.0'
[]
[pct_change]
type = PercentChangePostprocessor
postprocessor = max_T
[]
[]
[UserObjects]
[layered_average]
type = LayeredAverage
direction = x
variable = P
num_layers = 4
[]
[]
[AuxVariables]
[layered_p]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[layered_p]
type = SpatialUserObjectAux
variable = layered_p
user_object = layered_average
[]
[]
(test/tests/nek_errors/invalid_settings/timestepper.i)
[Mesh]
type = NekRSMesh
boundary = '3'
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[]
(test/tests/nek_mesh/first_order/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = FIRST
boundary = '1 2 3 4'
[]
# only here to avoid a re-gold
[Variables]
[dummy]
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
hide = 'flux_integral temp avg_flux'
[]
# The points provided to these postprocessors are the centroids of the elements that
# we wish to print the node coordinates for.
[Postprocessors]
[num_elems]
type = NekMeshInfoPostprocessor
test_type = num_elems
[]
[num_nodes]
type = NekMeshInfoPostprocessor
test_type = num_nodes
[]
# coordinates of nodes of element 0
[elem0_node0_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 0
test_type = node_x
[]
[elem0_node0_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 0
test_type = node_y
[]
[elem0_node0_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 0
test_type = node_z
[]
[elem0_node1_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 1
test_type = node_x
[]
[elem0_node1_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 1
test_type = node_y
[]
[elem0_node1_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 1
test_type = node_z
[]
[elem0_node2_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 2
test_type = node_x
[]
[elem0_node2_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 2
test_type = node_y
[]
[elem0_node2_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 2
test_type = node_z
[]
[elem0_node3_x]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 3
test_type = node_x
[]
[elem0_node3_y]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 3
test_type = node_y
[]
[elem0_node3_z]
type = NekMeshInfoPostprocessor
point = '0.180650573 0.0296807698 0.471347985'
node = 3
test_type = node_z
[]
# coordinates of nodes of element 24
[elem24_node0_x]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 0
test_type = node_x
[]
[elem24_node0_y]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 0
test_type = node_y
[]
[elem24_node0_z]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 0
test_type = node_z
[]
[elem24_node1_x]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 1
test_type = node_x
[]
[elem24_node1_y]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 1
test_type = node_y
[]
[elem24_node1_z]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 1
test_type = node_z
[]
[elem24_node2_x]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 2
test_type = node_x
[]
[elem24_node2_y]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 2
test_type = node_y
[]
[elem24_node2_z]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 2
test_type = node_z
[]
[elem24_node3_x]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 3
test_type = node_x
[]
[elem24_node3_y]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 3
test_type = node_y
[]
[elem24_node3_z]
type = NekMeshInfoPostprocessor
point = '0.230319 -0.0598418 0.365829'
node = 3
test_type = node_z
[]
# coordinates of nodes of element 147
[elem147_node0_x]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 0
test_type = node_x
[]
[elem147_node0_y]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 0
test_type = node_y
[]
[elem147_node0_z]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 0
test_type = node_z
[]
[elem147_node1_x]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 1
test_type = node_x
[]
[elem147_node1_y]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 1
test_type = node_y
[]
[elem147_node1_z]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 1
test_type = node_z
[]
[elem147_node2_x]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 2
test_type = node_x
[]
[elem147_node2_y]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 2
test_type = node_y
[]
[elem147_node2_z]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 2
test_type = node_z
[]
[elem147_node3_x]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 3
test_type = node_x
[]
[elem147_node3_y]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 3
test_type = node_y
[]
[elem147_node3_z]
type = NekMeshInfoPostprocessor
point = '-0.1404 0.314343 -0.456323'
node = 3
test_type = node_z
[]
[]
(test/tests/conduction/boundary_and_volume/prism/nek_exact.i)
[Problem]
type = NekRSProblem
casename = 'pyramid_low'
usrwrk_output = '0 1'
usrwrk_output_prefix = 'flx src'
[]
[Mesh]
type = NekRSMesh
volume = true
boundary = '2'
order = FIRST
exact = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[avg_T_volume]
type = NekVolumeAverage
field = temperature
[]
[heat_flux]
type = NekHeatFluxIntegral
boundary = '2'
[]
[nek_min_1]
type = NekSideExtremeValue
field = temperature
boundary = '3'
value_type = min
[]
[nek_min_2]
type = NekSideExtremeValue
field = temperature
boundary = '4'
value_type = min
[]
[nek_min_3]
type = NekSideExtremeValue
field = temperature
boundary = '5'
value_type = min
[]
[nek_min_4]
type = NekSideExtremeValue
field = temperature
boundary = '6'
value_type = min
[]
[nek_max_1]
type = NekSideExtremeValue
field = temperature
boundary = '3'
[]
[nek_max_2]
type = NekSideExtremeValue
field = temperature
boundary = '4'
[]
[nek_max_3]
type = NekSideExtremeValue
field = temperature
boundary = '5'
[]
[nek_max_4]
type = NekSideExtremeValue
field = temperature
boundary = '6'
[]
[]
[Outputs]
exodus = true
interval = 30
hide = 'flux_integral source_integral'
[]
(test/tests/multiple_nek_apps/two_channels/nek.i)
[Mesh]
type = NekRSMesh
boundary = '1'
volume = true
[]
[Problem]
type = NekRSProblem
casename = 'pin'
write_fld_files = true
# this just helps us skip the heat source transfer into NekRS from MOOSE
# (infrastructure that exists for coupling to neutronics) when we could
# easily just set the constant pin heat source ourselves
has_heat_source = false
[]
[Postprocessors]
[max_T]
type = NekVolumeExtremeValue
field = temperature
[]
[avg_T]
type = NekVolumeAverage
field = temperature
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
execute_on = 'final'
# just to make the gold files smaller
hide = 'avg_flux flux_integral'
[]
(test/tests/nek_mesh/exact/exact_volume.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
volume = true
exact = true
[]
(test/tests/nek_errors/insufficient_scratch/nek_mesh.i)
[Mesh]
type = NekRSMesh
volume = true
displacements = 'dx dy dz'
[]
[AuxVariables]
[dx]
[]
[dy]
[]
[dz]
[]
[]
[Problem]
type = NekRSProblem
casename = 'brick2'
has_heat_source = false
n_usrwrk_slots = 1
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/cht/multi_cht/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'conj_ht'
output = 'temperature pressure scalar01'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[volume_nek_fluid]
type = NekVolumeIntegral
field = unity
mesh = fluid
[]
[volume_nek_solid]
type = NekVolumeIntegral
field = unity
mesh = solid
[]
[volume_nek_all]
type = NekVolumeIntegral
field = unity
mesh = all
[]
[volume_moose_fluid]
type = VolumePostprocessor
block = '0'
[]
[volume_moose_solid]
type = VolumePostprocessor
block = '1'
[]
[volume_moose_all]
type = VolumePostprocessor
[]
[int_T_nek_fluid]
type = NekVolumeIntegral
field = temperature
mesh = fluid
[]
[int_T_nek_solid]
type = NekVolumeIntegral
field = temperature
mesh = solid
[]
[int_T_nek_all]
type = NekVolumeIntegral
field = temperature
mesh = all
[]
[int_T_moose_fluid]
type = ElementIntegralVariablePostprocessor
variable = temp
block = '0'
[]
[int_T_moose_solid]
type = ElementIntegralVariablePostprocessor
variable = temp
block = '1'
[]
[int_T_moose_all]
type = ElementIntegralVariablePostprocessor
variable = temp
[]
[int_p_nek_fluid]
type = NekVolumeIntegral
field = pressure
mesh = fluid
[]
[int_p_nek_solid]
type = NekVolumeIntegral
field = pressure
mesh = solid
[]
[int_p_nek_all]
type = NekVolumeIntegral
field = pressure
mesh = all
[]
[int_p_moose_fluid]
type = ElementIntegralVariablePostprocessor
variable =P
block = '0'
[]
[int_p_moose_solid]
type = ElementIntegralVariablePostprocessor
variable = P
block = '1'
[]
[int_p_moose_all]
type = ElementIntegralVariablePostprocessor
variable = P
[]
[volume_avg_nek_fluid]
type = NekVolumeAverage
field = unity
mesh = fluid
[]
[volume_avg_nek_solid]
type = NekVolumeAverage
field = unity
mesh = solid
[]
[volume_avg_nek_all]
type = NekVolumeAverage
field = unity
mesh = all
[]
[avg_T_nek_fluid]
type = NekVolumeAverage
field = temperature
mesh = fluid
[]
[avg_T_nek_solid]
type = NekVolumeAverage
field = temperature
mesh = solid
[]
[avg_T_nek_all]
type = NekVolumeAverage
field = temperature
mesh = all
[]
[avg_T_moose_fluid]
type = ElementAverageValue
variable = temp
block = '0'
[]
[avg_T_moose_solid]
type = ElementAverageValue
variable = temp
block = '1'
[]
[avg_T_moose_all]
type = ElementAverageValue
variable = temp
[]
[avg_p_nek_fluid]
type = NekVolumeAverage
field = pressure
mesh = fluid
[]
[avg_p_nek_solid]
type = NekVolumeAverage
field = pressure
mesh = solid
[]
[avg_p_nek_all]
type = NekVolumeAverage
field = pressure
mesh = all
[]
[avg_p_moose_fluid]
type = ElementAverageValue
variable = P
block = '0'
[]
[avg_p_moose_solid]
type = ElementAverageValue
variable = P
block = '1'
[]
[avg_p_moose_all]
type = ElementAverageValue
variable = P
[]
[max_T_nek_fluid]
type = NekVolumeExtremeValue
field = temperature
mesh = fluid
[]
[max_T_nek_solid]
type = NekVolumeExtremeValue
field = temperature
mesh = solid
[]
[max_T_nek_all]
type = NekVolumeExtremeValue
field = temperature
mesh = all
[]
[max_T_moose_fluid]
type = NodalExtremeValue
variable = temp
block = '0'
[]
[max_T_moose_solid]
type = NodalExtremeValue
variable = temp
block = '1'
[]
[max_T_moose_all]
type = NodalExtremeValue
variable = temp
[]
[min_T_nek_fluid]
type = NekVolumeExtremeValue
field = temperature
value_type = min
mesh = fluid
[]
[min_T_nek_solid]
type = NekVolumeExtremeValue
field = temperature
value_type = min
mesh = solid
[]
[min_T_nek_all]
type = NekVolumeExtremeValue
field = temperature
value_type = min
mesh = all
[]
[min_T_moose_fluid]
type = NodalExtremeValue
variable = temp
value_type = min
block = '0'
[]
[min_T_moose_solid]
type = NodalExtremeValue
variable = temp
value_type = min
block = '1'
[]
[min_T_moose_all]
type = NodalExtremeValue
variable = temp
value_type = min
[]
# we include these to show that the extrema postprocessors do properly fetch the true max/min
# when the max/min is in either the solid or the fluid domain
[min_q_nek_fluid]
type = NekVolumeExtremeValue
field = scalar01
value_type = min
mesh = fluid
[]
[min_q_nek_solid]
type = NekVolumeExtremeValue
field = scalar01
value_type = min
mesh = solid
[]
[min_q_nek_all]
type = NekVolumeExtremeValue
field = scalar01
value_type = min
mesh = all
[]
[min_q_moose_fluid]
type = NodalExtremeValue
variable = scalar01
value_type = min
block = '0'
[]
[min_q_moose_solid]
type = NodalExtremeValue
variable = scalar01
value_type = min
block = '1'
[]
[min_q_moose_all]
type = NodalExtremeValue
variable = scalar01
value_type = min
[]
[]
[Outputs]
csv = true
exodus = true
[]
(test/tests/userobjects/gap/nondimensional/nek.i)
[Mesh]
type = NekRSMesh
volume = true
scaling = 7.646e-3
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature pressure velocity'
nondimensional = true
L_ref = 7.646e-3
T_ref = 100.0
dT_ref = 50.0
U_ref = 2.0
rho_0 = 834.5
Cp_0 = 1228.0
[]
[AuxVariables]
[avg_T]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[avg_v]
family = MONOMIAL
order = CONSTANT
[]
[integral_T]
family = MONOMIAL
order = CONSTANT
[]
[integral_p]
family = MONOMIAL
order = CONSTANT
[]
[integral_v]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[avg_T]
type = SpatialUserObjectAux
variable = avg_T
user_object = avg_T
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
[]
[avg_v]
type = SpatialUserObjectAux
variable = avg_v
user_object = avg_v
[]
[integral_T]
type = SpatialUserObjectAux
variable = integral_T
user_object = integral_T
[]
[integral_p]
type = SpatialUserObjectAux
variable = integral_p
user_object = integral_p
[]
[integral_v]
type = SpatialUserObjectAux
variable = integral_v
user_object = integral_v
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[avg_T]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[avg_p]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[avg_v]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[integral_T]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = temperature
[]
[integral_p]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = pressure
[]
[integral_v]
type = NekBinnedVolumeIntegral
bins = 'subchannel_binning axial_binning'
field = velocity
[]
[]
[MultiApps]
[subchannel]
type = TransientMultiApp
input_files = 'subchannel.i'
execute_on = timestep_end
[]
[]
[Transfers]
[uo1_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_T
to_multi_app = subchannel
variable = avg_T
[]
[uo2_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_p
to_multi_app = subchannel
variable = avg_p
[]
[uo3_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = avg_v
to_multi_app = subchannel
variable = avg_v
[]
[uo4_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_T
to_multi_app = subchannel
variable = integral_T
[]
[uo5_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_p
to_multi_app = subchannel
variable = integral_p
[]
[uo6_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
source_user_object = integral_v
to_multi_app = subchannel
variable = integral_v
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/deformation/nek_standalone/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'mv_cyl'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[volume]
type = NekVolumeIntegral
field = unity
[]
[area]
type = NekSideIntegral
field = unity
boundary = '1 2 3'
[]
# these will not reflect the changing mesh, because we do not copy displacements
# from NekRS to MOOSE
[volume_moose]
type = VolumePostprocessor
[]
[area_moose]
type = AreaPostprocessor
boundary = '1 2 3'
[]
[]
[Outputs]
csv = true
execute_on = 'final'
[]
(test/tests/nek_errors/insufficient_scratch/nek_separate_domain.i)
[Mesh]
type = NekRSMesh
boundary = '1 2'
[]
[Problem]
type = NekRSSeparateDomainProblem
casename = 'brick'
coupling_type = 'inlet outlet'
inlet_boundary = '1'
outlet_boundary = '2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(tutorials/fhr_reflector/cht/nek.i)
fluid_solid_interface = '1 2 7'
[Mesh]
type = NekRSMesh
boundary = ${fluid_solid_interface}
scaling = 0.006
[]
[Problem]
type = NekRSProblem
casename = 'fluid'
nondimensional = true
U_ref = 0.0575
T_ref = 923.15
dT_ref = 10.0
L_ref = 0.006
rho_0 = 1962.13
Cp_0 = 2416.0
[]
[Executioner]
type = Transient
timestep_tolerance = 1e-9
[./TimeStepper]
type = NekTimeStepper
[../]
[]
[Outputs]
exodus = true
[]
[Postprocessors]
[boundary_flux]
type = NekHeatFluxIntegral
boundary = ${fluid_solid_interface}
[]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[pressure_in]
type = NekSideAverage
field = pressure
boundary = '5'
[]
[mdot_in]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '5'
[]
[mdot_out]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '6'
[]
[]
(test/tests/postprocessors/nek_volume_integral/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'source_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[volume]
type = NekVolumeIntegral
field = unity
[]
[temp_integral]
type = NekVolumeIntegral
field = temperature
[]
[pressure_integral]
type = NekVolumeIntegral
field = pressure
[]
[velocity_integral]
type = NekVolumeIntegral
field = velocity
[]
[velocity_component]
type = NekVolumeIntegral
field = velocity_component
velocity_direction = '0.1 0.2 0.3'
[]
[]
(test/tests/nek_standalone/channel/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'channel'
output = 'pressure velocity'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_Vx]
type = NekVolumeExtremeValue
field = velocity_x
value_type = max
[]
[max_Vx_output]
type = NodalExtremeValue
variable = vel_x
value_type = max
[]
[max_Vx_diff]
type = DifferencePostprocessor
value1 = max_Vx
value2 = max_Vx_output
[]
[min_Vx]
type = NekVolumeExtremeValue
field = velocity_x
value_type = min
[]
[min_Vx_output]
type = NodalExtremeValue
variable = vel_x
value_type = min
[]
[min_Vx_diff]
type = DifferencePostprocessor
value1 = min_Vx
value2 = min_Vx_output
[]
[max_Vy]
type = NekVolumeExtremeValue
field = velocity_y
value_type = max
[]
[max_Vy_output]
type = NodalExtremeValue
variable = vel_y
value_type = max
[]
[max_Vy_diff]
type = DifferencePostprocessor
value1 = max_Vy
value2 = max_Vy_output
[]
[min_Vy]
type = NekVolumeExtremeValue
field = velocity_y
value_type = min
[]
[min_Vy_output]
type = NodalExtremeValue
variable = vel_y
value_type = min
[]
[max_p]
type = NekVolumeExtremeValue
field = pressure
value_type = max
[]
[max_p_output]
type = NodalExtremeValue
variable = P
value_type = max
[]
[max_p_diff]
type = DifferencePostprocessor
value1 = max_p
value2 = max_p_output
[]
[min_p]
type = NekVolumeExtremeValue
field = pressure
value_type = min
[]
[min_p_output]
type = NodalExtremeValue
variable = P
value_type = min
[]
[min_p_diff]
type = DifferencePostprocessor
value1 = min_p
value2 = min_p_output
[]
[area]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_output]
type = AreaPostprocessor
boundary = '1'
[]
[area_diff]
type = DifferencePostprocessor
value1 = area
value2 = area_output
[]
[volume]
type = NekVolumeIntegral
field = unity
[]
[volume_output]
type = VolumePostprocessor
[]
[volume_diff]
type = DifferencePostprocessor
value1 = volume
value2 = volume_output
[]
[max_Vx_side]
type = NekSideExtremeValue
field = velocity_x
value_type = max
boundary = '1'
[]
[max_Vx_side_output]
type = NodalExtremeValue
variable = vel_x
value_type = max
boundary = '1'
[]
[max_Vx_side_diff]
type = DifferencePostprocessor
value1 = max_Vx_side
value2 = max_Vx_side_output
[]
[max_Vy_side]
type = NekSideExtremeValue
field = velocity_y
value_type = max
boundary = '1'
[]
[max_Vy_side_output]
type = NodalExtremeValue
variable = vel_y
value_type = max
boundary = '1'
[]
[max_Vy_side_diff]
type = DifferencePostprocessor
value1 = max_Vy_side
value2 = max_Vy_side_output
[]
[min_Vx_side]
type = NekSideExtremeValue
field = velocity_x
value_type = min
boundary = '1'
[]
[min_Vx_side_output]
type = NodalExtremeValue
variable = vel_x
value_type = min
boundary = '1'
[]
[min_Vx_side_diff]
type = DifferencePostprocessor
value1 = min_Vx_side
value2 = min_Vx_side_output
[]
[min_Vy_side]
type = NekSideExtremeValue
field = velocity_y
value_type = min
boundary = '1'
[]
[min_Vy_side_output]
type = NodalExtremeValue
variable = vel_y
value_type = min
boundary = '1'
[]
[min_Vy_side_diff]
type = DifferencePostprocessor
value1 = min_Vy_side
value2 = min_Vy_side_output
[]
[max_p_side]
type = NekSideExtremeValue
field = pressure
value_type = max
boundary = '1'
[]
[max_p_side_output]
type = NodalExtremeValue
variable = P
value_type = max
boundary = '1'
[]
[min_p_side_diff]
type = DifferencePostprocessor
value1 = min_p_side
value2 = min_p_side_output
[]
[min_p_side]
type = NekSideExtremeValue
field = pressure
value_type = min
boundary = '1'
[]
[min_p_side_output]
type = NodalExtremeValue
variable = P
value_type = min
boundary = '1'
[]
[max_p_side_diff]
type = DifferencePostprocessor
value1 = max_p_side
value2 = max_p_side_output
[]
[avg_p]
type = NekVolumeAverage
field = pressure
[]
[avg_p_output]
type = ElementAverageValue
variable = P
[]
[avg_p_diff]
type = DifferencePostprocessor
value1 = avg_p
value2 = avg_p_output
[]
[avg_Vx]
type = NekVolumeAverage
field = velocity_x
[]
[avg_Vx_output]
type = ElementAverageValue
variable = vel_x
[]
[avg_Vx_diff]
type = DifferencePostprocessor
value1 = avg_Vx
value2 = avg_Vx_output
[]
[avg_Vy]
type = NekVolumeAverage
field = velocity_y
[]
[avg_Vy_output]
type = ElementAverageValue
variable = vel_y
[]
[avg_Vy_diff]
type = DifferencePostprocessor
value1 = avg_Vy
value2 = avg_Vy_output
[]
[avg_Vx_side]
type = NekSideAverage
field = velocity_x
boundary = '1'
[]
[avg_Vx_side_output]
type = SideAverageValue
variable = vel_x
boundary = '1'
[]
[avg_Vx_side_diff]
type = DifferencePostprocessor
value1 = avg_Vx_side
value2 = avg_Vx_side_output
[]
[avg_Vy_side]
type = NekSideAverage
field = velocity_y
boundary = '1'
[]
[avg_Vy_side_output]
type = SideAverageValue
variable = vel_y
boundary = '1'
[]
[avg_Vy_side_diff]
type = DifferencePostprocessor
value1 = avg_Vy_side
value2 = avg_Vy_side_output
[]
[avg_p_side]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[avg_p_side_output]
type = SideAverageValue
variable = P
boundary = '1'
[]
[avg_p_side_diff]
type = DifferencePostprocessor
value1 = avg_p_side
value2 = avg_p_side_output
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
hide = 'max_Vx_output min_Vx_output max_Vy_output min_Vy_output max_p_output min_p_output area_output volume_output max_Vx_side max_Vx_side_output max_Vy_side max_Vy_side_output max_p_side max_p_side_output min_Vx_side min_Vx_side_output min_Vy_side min_Vy_side_output min_p_side min_p_side_output avg_p avg_p_output avg_Vx avg_Vx_output avg_Vy avg_Vy_output avg_Vx_side avg_Vx_side_output avg_Vy_side avg_Vy_side_output avg_p_side avg_p_side_output max_Vx max_Vy max_p min_Vx min_Vy min_p area'
[]
(test/tests/userobjects/radial_layered/2d.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'cylinder'
output = 'pressure'
nondimensional = true
L_ref = 5.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 5.0
[]
[AuxVariables]
[uo]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[uo]
type = SpatialUserObjectAux
variable = uo
user_object = vol_integral
[]
[]
[UserObjects]
[r_bins]
type = RadialBin
vertical_axis = z
nr = 5
rmin = 0.0
rmax = 1.0
[]
[z_bins]
type = LayeredBin
direction = z
num_layers = 5
[]
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'r_bins z_bins'
field = pressure
[]
[]
[VectorPostprocessors]
# from_uo gives exactly the same results as manually specifying the points in 'manually_provided'
[from_uo]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
[]
[manually_provided]
type = SpatialUserObjectVectorPostprocessor
userobject = vol_integral
points = '0.1 0.0 -2.0
0.1 0.0 -1.0
0.1 0.0 0.0
0.1 0.0 1.0
0.1 0.0 2.0
0.3 0.0 -2.0
0.3 0.0 -1.0
0.3 0.0 0.0
0.3 0.0 1.0
0.3 0.0 2.0
0.5 0.0 -2.0
0.5 0.0 -1.0
0.5 0.0 0.0
0.5 0.0 1.0
0.5 0.0 2.0
0.7 0.0 -2.0
0.7 0.0 -1.0
0.7 0.0 0.0
0.7 0.0 1.0
0.7 0.0 2.0
0.9 0.0 -2.0
0.9 0.0 -1.0
0.9 0.0 0.0
0.9 0.0 1.0
0.9 0.0 2.0'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
[]
(test/tests/nek_output/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
output = 'scalar01 scalar02 scalar03'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Functions]
[s01]
type = ParsedFunction
expression = 'sin(x)'
[]
[s02]
type = ParsedFunction
expression = 'y+1'
[]
[s03]
type = ParsedFunction
expression = 'exp(x*y*z)'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[Quadrature]
type = GAUSS_LOBATTO
order = FIRST
[]
[]
[Postprocessors]
[s01_error]
type = ElementL1Error
variable = scalar01
function = s01
[]
[s02_error]
type = ElementL1Error
variable = scalar02
function = s02
[]
[s03_error]
type = ElementL1Error
variable = scalar03
function = s03
[]
[]
[Outputs]
exodus = true
csv = true
[]
(tutorials/restart_nek_and_moose/read_from_checkpoints/nek.i)
[Problem]
type = NekRSProblem
casename = pyramid
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[MultiApps]
[sub]
type = TransientMultiApp
input_files = 'cardinal_sub.i'
execute_on = 'timestep_begin'
[]
[]
(test/tests/nek_standalone/adaptive_dt/nek.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
[]
[]
[Postprocessors]
[time]
type = TimePostprocessor
execute_on = 'initial timestep_begin'
[]
[]
(test/tests/userobjects/layered_layered/duplicate_directions.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'pressure'
nondimensional = true
L_ref = 2.0
U_ref = 1.0
rho_0 = 834.5
Cp_0 = 1228.0
T_ref = 573.0
dT_ref = 10.0
[]
[Mesh]
type = NekRSMesh
volume = true
scaling = 2.0
[]
[UserObjects]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
[y_bins]
type = LayeredBin
direction = y
num_layers = 3
[]
[x_bins2]
type = LayeredBin
direction = x
num_layers = 12
[]
# should error because weve specified two x-direction bins
[vol_integral]
type = NekBinnedVolumeIntegral
bins = 'x_bins y_bins x_bins2'
field = unity
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_errors/invalid_settings/separate_boundary.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSSeparateDomainProblem
casename = 'brick'
coupling_type = 'inlet outlet'
outlet_boundary = '2'
inlet_boundary = '1'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/postprocessors/nek_volume_average/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'source_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[temp_average]
type = NekVolumeAverage
field = temperature
[]
[pressure_average]
type = NekVolumeAverage
field = pressure
[]
[velocity_average]
type = NekVolumeAverage
field = velocity
[]
[x_velocity_average]
type = NekVolumeAverage
field = velocity_x
[]
[y_velocity_average]
type = NekVolumeAverage
field = velocity_y
[]
[z_velocity_average]
type = NekVolumeAverage
field = velocity_z
[]
[velocity_component]
type = NekVolumeAverage
field = velocity_component
velocity_direction = '0.1 0.2 -0.3'
[]
[]
(test/tests/nek_stochastic/read/read.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'read'
output = 'scalar02'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_scalar]
type = ElementExtremeValue
variable = scalar02
value_type = max
[]
[min_scalar]
type = ElementExtremeValue
variable = scalar02
value_type = min
[]
[]
[Outputs]
csv = true
[]
(test/tests/nek_mesh/sidesets/pyramid/nek_volume.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = FIRST
volume = true
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
hide = 'flux_integral source_integral'
[]
[Postprocessors]
[area_side1_nek]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_side1_moose]
type = AreaPostprocessor
boundary = '1'
[]
[area_side2_nek]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_side2_moose]
type = AreaPostprocessor
boundary = '2'
[]
[area_side3_nek]
type = NekSideIntegral
field = unity
boundary = '3'
[]
[area_side3_moose]
type = AreaPostprocessor
boundary = '3'
[]
[area_side4_nek]
type = NekSideIntegral
field = unity
boundary = '4'
[]
[area_side4_moose]
type = AreaPostprocessor
boundary = '4'
[]
[area_side5_nek]
type = NekSideIntegral
field = unity
boundary = '5'
[]
[area_side5_moose]
type = AreaPostprocessor
boundary = '5'
[]
[area_side6_nek]
type = NekSideIntegral
field = unity
boundary = '6'
[]
[area_side6_moose]
type = AreaPostprocessor
boundary = '6'
[]
[area_side7_nek]
type = NekSideIntegral
field = unity
boundary = '7'
[]
[area_side7_moose]
type = AreaPostprocessor
boundary = '7'
[]
[area_side8_nek]
type = NekSideIntegral
field = unity
boundary = '8'
[]
[area_side8_moose]
type = AreaPostprocessor
boundary = '8'
[]
[]
(test/tests/nek_mesh/second_order/nek_volume.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
[]
# only here to avoid a re-gold
[Variables]
[dummy]
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
hide = 'source_integral temp heat_source'
[]
# The points provided to these postprocessors are the centroids of the elements that
# we wish to print the node coordinates for.
[Postprocessors]
[num_elems]
type = NekMeshInfoPostprocessor
test_type = num_elems
[]
[num_nodes]
type = NekMeshInfoPostprocessor
test_type = num_nodes
[]
# coordinates of nodes of element 0
[elem0_node00_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 0
test_type = node_x
[]
[elem0_node00_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 0
test_type = node_y
[]
[elem0_node00_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 0
test_type = node_z
[]
[elem0_node01_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 1
test_type = node_x
[]
[elem0_node01_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 1
test_type = node_y
[]
[elem0_node01_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 1
test_type = node_z
[]
[elem0_node02_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 2
test_type = node_x
[]
[elem0_node02_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 2
test_type = node_y
[]
[elem0_node02_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 2
test_type = node_z
[]
[elem0_node03_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 3
test_type = node_x
[]
[elem0_node03_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 3
test_type = node_y
[]
[elem0_node03_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 3
test_type = node_z
[]
[elem0_node04_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 4
test_type = node_x
[]
[elem0_node04_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 4
test_type = node_y
[]
[elem0_node04_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 4
test_type = node_z
[]
[elem0_node05_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 5
test_type = node_x
[]
[elem0_node05_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 5
test_type = node_y
[]
[elem0_node05_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 5
test_type = node_z
[]
[elem0_node06_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 6
test_type = node_x
[]
[elem0_node06_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 6
test_type = node_y
[]
[elem0_node06_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 6
test_type = node_z
[]
[elem0_node07_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 7
test_type = node_x
[]
[elem0_node07_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 7
test_type = node_y
[]
[elem0_node07_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 7
test_type = node_z
[]
[elem0_node08_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 8
test_type = node_x
[]
[elem0_node08_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 8
test_type = node_y
[]
[elem0_node08_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 8
test_type = node_z
[]
[elem0_node09_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 9
test_type = node_x
[]
[elem0_node09_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 9
test_type = node_y
[]
[elem0_node09_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 9
test_type = node_z
[]
[elem0_node10_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 10
test_type = node_x
[]
[elem0_node10_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 10
test_type = node_y
[]
[elem0_node10_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 10
test_type = node_z
[]
[elem0_node11_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 11
test_type = node_x
[]
[elem0_node11_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 11
test_type = node_y
[]
[elem0_node11_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 11
test_type = node_z
[]
[elem0_node12_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 12
test_type = node_x
[]
[elem0_node12_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 12
test_type = node_y
[]
[elem0_node12_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 12
test_type = node_z
[]
[elem0_node13_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 13
test_type = node_x
[]
[elem0_node13_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 13
test_type = node_y
[]
[elem0_node13_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 13
test_type = node_z
[]
[elem0_node14_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 14
test_type = node_x
[]
[elem0_node14_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 14
test_type = node_y
[]
[elem0_node14_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 14
test_type = node_z
[]
[elem0_node15_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 15
test_type = node_x
[]
[elem0_node15_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 15
test_type = node_y
[]
[elem0_node15_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 15
test_type = node_z
[]
[elem0_node16_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 16
test_type = node_x
[]
[elem0_node16_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 16
test_type = node_y
[]
[elem0_node16_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 16
test_type = node_z
[]
[elem0_node17_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 17
test_type = node_x
[]
[elem0_node17_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 17
test_type = node_y
[]
[elem0_node17_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 17
test_type = node_z
[]
[elem0_node18_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 18
test_type = node_x
[]
[elem0_node18_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 18
test_type = node_y
[]
[elem0_node18_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 18
test_type = node_z
[]
[elem0_node19_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 19
test_type = node_x
[]
[elem0_node19_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 19
test_type = node_y
[]
[elem0_node19_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 19
test_type = node_z
[]
[elem0_node20_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 20
test_type = node_x
[]
[elem0_node20_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 20
test_type = node_y
[]
[elem0_node20_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 20
test_type = node_z
[]
[elem0_node21_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 21
test_type = node_x
[]
[elem0_node21_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 21
test_type = node_y
[]
[elem0_node21_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 21
test_type = node_z
[]
[elem0_node22_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 22
test_type = node_x
[]
[elem0_node22_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 22
test_type = node_y
[]
[elem0_node22_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 22
test_type = node_z
[]
[elem0_node23_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 23
test_type = node_x
[]
[elem0_node23_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 23
test_type = node_y
[]
[elem0_node23_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 23
test_type = node_z
[]
[elem0_node24_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 24
test_type = node_x
[]
[elem0_node24_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 24
test_type = node_y
[]
[elem0_node24_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 24
test_type = node_z
[]
[elem0_node25_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 25
test_type = node_x
[]
[elem0_node25_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 25
test_type = node_y
[]
[elem0_node25_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 25
test_type = node_z
[]
[elem0_node26_x]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 26
test_type = node_x
[]
[elem0_node26_y]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 26
test_type = node_y
[]
[elem0_node26_z]
type = NekMeshInfoPostprocessor
point = '0.175440744 0.0370379974 0.445918094'
node = 26
test_type = node_z
[]
[]
(tutorials/gas_compact_cht/nek.i)
!include common_input.i
# copy-pasta from common_input.i
channel_diameter = 0.016 # diameter of the coolant channels (m)
height = 6.343 # height of the full core (m)
inlet_T = 598.0 # inlet fluid temperature (K)
power = 200e6 # full core power (W)
mdot = 117.3 # fluid mass flowrate (kg/s)
fluid_density = 5.5508 # fluid density (kg/m3)
fluid_Cp = 5189.0 # fluid isobaric specific heat (J/kg/K)
n_bundles = 12 # number of bundles in the full core
n_coolant_channels_per_block = 108 # number of coolant channels per assembly
unit_cell_height = 1.6 # unit cell height - arbitrarily selected
num_layers_for_plots = 50 # number of layers to average fields over for plotting
[Mesh]
type = NekRSMesh
boundary = '3'
volume = true
scaling = ${channel_diameter}
[]
[Problem]
type = NekRSProblem
casename = 'ranstube'
has_heat_source = false
nondimensional = true
U_ref = ${fparse mdot / (n_bundles * n_coolant_channels_per_block) / fluid_density / (pi * channel_diameter * channel_diameter / 4.0)}
T_ref = ${inlet_T}
dT_ref = ${fparse power / mdot / fluid_Cp * unit_cell_height / height}
L_ref = ${channel_diameter}
rho_0 = ${fluid_density}
Cp_0 = ${fluid_Cp}
synchronization_interval = parent_app
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
min_dt = 1e-10
[]
[]
[Outputs]
exodus = true
[screen]
type = Console
hide = 'boundary_flux inlet_T outlet_T max_T flux_integral transfer_in'
[]
[csv]
file_base = 'csv/nek'
type = CSV
[]
[]
[Postprocessors]
[boundary_flux]
type = NekHeatFluxIntegral
boundary = '3'
[]
[inlet_T]
type = NekSideAverage
field = temperature
boundary = '1'
[]
[outlet_T]
type = NekSideAverage
field = temperature
boundary = '2'
[]
[max_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[]
[UserObjects]
active = '' # simply comment out this line to evaluate these user objects
[layered_bin]
type = LayeredBin
num_layers = ${num_layers_for_plots}
direction = z
[]
[wall_temp]
type = NekBinnedSideAverage
bins = 'layered_bin'
boundary = '3'
field = temperature
map_space_by_qp = true
[]
[bulk_temp]
type = NekBinnedVolumeAverage
bins = 'layered_bin'
field = temperature
map_space_by_qp = true
[]
[]
[VectorPostprocessors]
active = '' # simply comment out this line to evaluate these user objects
[wall]
type = SpatialUserObjectVectorPostprocessor
userobject = wall_temp
[]
[bulk]
type = SpatialUserObjectVectorPostprocessor
userobject = bulk_temp
[]
[]
(test/tests/nek_errors/deformation/nek.i)
[Mesh]
type = NekRSMesh
order = SECOND
volume = true
parallel_type = replicated
[]
[Problem]
type = NekRSProblem
has_heat_source = false
casename = 'elast_nomv'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_errors/invalid_field/auxvar.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
output = 'temperature'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[AuxVariables]
[temp]
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/userobjects/nek_scalar_value/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
has_heat_source = false
output = 'temperature'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
[]
[scalar2]
type = NekScalarValue
[]
[]
[Controls]
[func_control]
type = RealFunctionControl
parameter = 'UserObjects/scalar1/value'
function = 'val'
execute_on = 'timestep_begin'
[]
[func_control2]
type = RealFunctionControl
parameter = 'UserObjects/scalar2/value'
function = 'val2'
execute_on = 'timestep_begin'
[]
[]
[Functions]
[val]
type = ParsedFunction
expression = 'if (t > 1, 200.0, 100.0)'
[]
[val2]
type = ParsedFunction
expression = 'if (t > 1, 400.0, 300.0)'
[]
[]
[Postprocessors]
[avg_t_5]
type = NekSideAverage
field = temperature
boundary = '5'
[]
[avg_t_6]
type = NekSideAverage
field = temperature
boundary = '6'
[]
[]
[Outputs]
exodus = true
csv = true
[]
(test/tests/nek_mesh/sidesets/pyramid/exact_volume.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
exact = true
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
csv = true
file_base = 'nek_volume_out'
[]
[Postprocessors]
[area_side1_nek]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_side1_moose]
type = AreaPostprocessor
boundary = '1'
[]
[area_side2_nek]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_side2_moose]
type = AreaPostprocessor
boundary = '2'
[]
[area_side3_nek]
type = NekSideIntegral
field = unity
boundary = '3'
[]
[area_side3_moose]
type = AreaPostprocessor
boundary = '3'
[]
[area_side4_nek]
type = NekSideIntegral
field = unity
boundary = '4'
[]
[area_side4_moose]
type = AreaPostprocessor
boundary = '4'
[]
[area_side5_nek]
type = NekSideIntegral
field = unity
boundary = '5'
[]
[area_side5_moose]
type = AreaPostprocessor
boundary = '5'
[]
[area_side6_nek]
type = NekSideIntegral
field = unity
boundary = '6'
[]
[area_side6_moose]
type = AreaPostprocessor
boundary = '6'
[]
[area_side7_nek]
type = NekSideIntegral
field = unity
boundary = '7'
[]
[area_side7_moose]
type = AreaPostprocessor
boundary = '7'
[]
[area_side8_nek]
type = NekSideIntegral
field = unity
boundary = '8'
[]
[area_side8_moose]
type = AreaPostprocessor
boundary = '8'
[]
[]
(test/tests/nek_output/nek_fld.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
output = 'temperature'
n_usrwrk_slots = 2
has_heat_source = false
usrwrk_output = '2'
usrwrk_output_prefix = 'ax'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/cht/pincell_p_v/nek.i)
[Problem]
type = NekRSProblem
casename = 'sfr_pin'
output = 'pressure velocity'
has_heat_source = false
[]
[Mesh]
type = NekRSMesh
order = SECOND
boundary = '1'
# we dont have any volume-based coupling with NekRS, but by specifying
# volume here, we will extract pressure and velocity on
# a volume mesh mirror
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
[]
(test/tests/cht/sfr_pincell/nek_vpp.i)
[Problem]
type = NekRSProblem
casename = 'sfr_pin'
conserve_flux_by_sideset = true
# we only technically need one scratch space slot for this problem,
# so we can skip allocating extra
n_usrwrk_slots = 1
[]
[Mesh]
type = NekRSMesh
boundary = '1'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[nek_flux]
type = NekHeatFluxIntegral
boundary = '1'
[]
[average_inlet_T]
type = NekSideAverage
field = temperature
boundary = '3'
execute_on = initial
[]
[average_outlet_T]
type = NekSideAverage
field = temperature
boundary = '4'
[]
[dT]
type = DifferencePostprocessor
value1 = average_outlet_T
value2 = average_inlet_T
[]
[inlet_mdot]
type = NekMassFluxWeightedSideIntegral
field = unity
boundary = '3'
execute_on = initial
[]
# postprocessors for comparing against non-dimensional version in ../nondimensional
# --> uncomment in order to get the reference values that the nondimensional boundary coupling
# was verified against
#
# # side integral
# [area_1]
# type = NekSideIntegral
# field = unity
# boundary = '1'
# []
# [pressure_1]
# type = NekSideIntegral
# field = pressure
# boundary = '1'
# []
# [temperature_1]
# type = NekSideIntegral
# field = temperature
# boundary = '1'
# []
# # side average
# [avg_area_1]
# type = NekSideAverage
# field = unity
# boundary = '1'
# []
# [avg_pressure_1]
# type = NekSideAverage
# field = pressure
# boundary = '1'
# []
# [avg_temperature_1]
# type = NekSideAverage
# field = temperature
# boundary = '1'
# []
# # volume integral
# [volume]
# type = NekVolumeIntegral
# field = unity
# []
# [pressure_vol]
# type = NekVolumeIntegral
# field = pressure
# []
# [temperature_vol]
# type = NekVolumeIntegral
# field = temperature
# []
# # volume average
# [avg_volume]
# type = NekVolumeAverage
# field = unity
# []
# [avg_pressure_vol]
# type = NekVolumeAverage
# field = pressure
# []
# [avg_temperature_vol]
# type = NekVolumeAverage
# field = temperature
# []
# # heat flux integral
# [nek_flux]
# type = NekHeatFluxIntegral
# boundary = '1'
# []
# # mass flux weighted integral
# [inlet_mdot]
# type = NekMassFluxWeightedSideIntegral
# field = unity
# boundary = '3'
# execute_on = initial
# []
# [outlet_T]
# type = NekMassFluxWeightedSideIntegral
# field = temperature
# boundary = '4'
# []
# [inlet_P]
# type = NekMassFluxWeightedSideIntegral
# field = pressure
# boundary = '4'
# []
# # mass flux weighted integral
# [inlet_mdot_avg]
# type = NekMassFluxWeightedSideAverage
# field = unity
# boundary = '3'
# execute_on = initial
# []
# [outlet_T_avg]
# type = NekMassFluxWeightedSideAverage
# field = temperature
# boundary = '4'
# []
# [inlet_P_avg]
# type = NekMassFluxWeightedSideAverage
# field = pressure
# boundary = '4'
# []
# # extreme value postprocessors - VOLUME
# [max_T]
# type = NekVolumeExtremeValue
# field = temperature
# value_type = max
# []
# [min_T]
# type = NekVolumeExtremeValue
# field = temperature
# value_type = min
# []
# [max_p]
# type = NekVolumeExtremeValue
# field = pressure
# value_type = max
# []
# [min_p]
# type = NekVolumeExtremeValue
# field = pressure
# value_type = min
# []
# [max_1]
# type = NekVolumeExtremeValue
# field = unity
# value_type = max
# []
# [min_1]
# type = NekVolumeExtremeValue
# field = unity
# value_type = min
# []
# # extreme value postprocessors - SIDE
# [max_T_out]
# type = NekSideExtremeValue
# field = temperature
# boundary = '4'
# value_type = max
# []
# [min_T_out]
# type = NekSideExtremeValue
# field = temperature
# boundary = '4'
# value_type = min
# []
# [max_p_in]
# type = NekSideExtremeValue
# field = pressure
# boundary = '3'
# value_type = max
# []
# [min_p_in]
# type = NekSideExtremeValue
# field = pressure
# boundary = '3'
# value_type = min
# []
# [max_1_in]
# type = NekSideExtremeValue
# field = unity
# boundary = '3'
# value_type = max
# []
# [min_1_in]
# type = NekSideExtremeValue
# field = unity
# boundary = '3'
# value_type = min
# []
[]
[Outputs]
exodus = true
execute_on = 'final'
csv = true
[screen]
type = Console
hide = 'average_inlet_T average_outlet_T'
[]
[]
(test/tests/nek_warnings/no_temp_solve/nek.i)
[Mesh]
type = NekRSMesh
boundary = '6'
[]
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_stochastic/errors/nek_standalone_error.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'ethier'
output = 'temperature'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
usrwrk_slot = 0
[]
[]
(tutorials/standalone/nek.i)
[Mesh]
type = NekRSMesh
volume = true
order = SECOND
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'turbPipe'
output = 'pressure velocity'
[]
[Postprocessors]
[outlet_p]
type = NekSideAverage
boundary = '2'
field = pressure
[]
[inlet_p]
type = NekSideAverage
boundary = '1'
field = pressure
[]
[mdot]
type = NekMassFluxWeightedSideIntegral
boundary = '1'
field = unity
[]
# subtracts the two pressure postprocessors
[dP]
type = DifferencePostprocessor
value1 = outlet_p
value2 = inlet_p
[]
[]
[UserObjects]
[axial_bins]
type = LayeredBin
direction = z
num_layers = 20
[]
[radial_bins]
type = RadialBin
vertical_axis = z
rmax = 0.5
nr = 12
growth_r = 0.9
[]
[volume_averages]
type = NekBinnedVolumeAverage
bins = 'radial_bins axial_bins'
field = velocity_z
map_space_by_qp = true
[]
[]
[AuxVariables]
[volume_averages]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[volume_averages]
type = SpatialUserObjectAux
variable = volume_averages
user_object = volume_averages
[]
[]
[MultiApps]
[sub]
type = TransientMultiApp
input_files = sub.i
execute_on = timestep_end
[]
[]
[Transfers]
[uo_to_sub]
type = MultiAppGeneralFieldUserObjectTransfer
to_multi_app = sub
source_user_object = volume_averages
variable = avg_velocity
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
csv = true
# this hides these values from the screen for neater output
hide = 'outlet_p inlet_p'
[]
(tutorials/restart_nek_and_moose/create_checkpoints/nek.i)
[Problem]
type = NekRSProblem
casename = pyramid
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[temperature_average]
type = NekVolumeAverage
field = temperature
[]
[pressure_average]
type = NekVolumeAverage
field = pressure
[]
[velocity_average]
type = NekVolumeAverage
field = velocity
[]
[x_velocity_average]
type = NekVolumeAverage
field = velocity_x
[]
[y_velocity_average]
type = NekVolumeAverage
field = velocity_y
[]
[z_velocity_average]
type = NekVolumeAverage
field = velocity_z
[]
[]
[MultiApps]
[sub]
type = TransientMultiApp
input_files = 'cardinal_sub.i'
execute_on = 'timestep_begin'
[]
[]
(test/tests/nek_errors/mpi_setup_multiple_inputs/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/nek_temp/second_order/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
order = SECOND
boundary = '1 2 3 4 5 6 7 8'
[]
[AuxVariables]
[analytic]
[]
[error_temp]
order = CONSTANT
family = MONOMIAL
[]
[difference]
[]
[]
[ICs]
[analytic]
type = FunctionIC
variable = analytic
function = analytic
[]
[]
[AuxKernels]
[error_temp]
type = ElementL2ErrorFunctionAux
variable = error_temp
coupled_variable = temp
function = analytic
[]
[difference]
type = ParsedAux
variable = difference
coupled_variables = 'analytic temp'
expression = 'temp-analytic'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Functions]
[analytic]
type = ParsedFunction
expression = 'exp(x)+sin(y)+x*y*z'
[]
[]
[Postprocessors]
[l2_error_in_nek_temp]
type = ElementL2Error
variable = temp
function = analytic
[]
[max_diff]
type = NodalExtremeValue
variable = difference
value_type = max
[]
[min_diff]
type = NodalExtremeValue
variable = difference
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
hide = 'flux_integral'
[]
(test/tests/userobjects/sideset_layered/z_bins_by_centroid.i)
[GlobalParams]
check_boundary_restricted = false
map_space_by_qp = false
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature'
[]
[AuxVariables]
[T1_bin3]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[T1_bin3]
type = SpatialUserObjectAux
variable = T1_bin3
user_object = T1_bin3
boundary = '1'
[]
[]
[UserObjects]
[z3]
type = LayeredBin
direction = z
num_layers = 3
[]
[T1_bin3]
type = NekBinnedSideIntegral
bins = 'z3'
field = temperature
boundary = '1'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[VectorPostprocessors]
[T]
type = SpatialUserObjectVectorPostprocessor
userobject = T1_bin3
[]
[]
[Outputs]
exodus = true
# remove from output to get smaller gold file
hide = 'temp'
[]
(test/tests/postprocessors/nek_weighted_side_integral/nek.i)
[Problem]
type = NekRSProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[weighted_T_side1]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '1'
[]
[weighted_T_side2]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '2'
[]
[weighted_T_side3]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '3'
[]
[weighted_T_side4]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '4'
[]
[weighted_T_side5]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '5'
[]
[weighted_T_side6]
type = NekMassFluxWeightedSideIntegral
field = temperature
boundary = '6'
[]
[]
(test/tests/nek_errors/invalid_field/nek_uo.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 10
pin_pitch = 1
pin_diameter = 1
n_rings = 1
[]
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning'
field = temperature
[]
[]
(test/tests/griffin_coupling/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
[out]
type = CSV
hide = 'flux_integral'
execute_on = 'final'
[]
[]
[Postprocessors]
[area_side1]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_side2]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_side3]
type = NekSideIntegral
field = unity
boundary = '3'
[]
[area_side4]
type = NekSideIntegral
field = unity
boundary = '4'
[]
[area_side5]
type = NekSideIntegral
field = unity
boundary = '5'
[]
[area_side6]
type = NekSideIntegral
field = unity
boundary = '6'
[]
[area_side7]
type = NekSideIntegral
field = unity
boundary = '7'
[]
[area_side8]
type = NekSideIntegral
field = unity
boundary = '8'
[]
[temp_side1]
type = NekSideIntegral
field = temperature
boundary = '1'
[]
[temp_side2]
type = NekSideIntegral
field = temperature
boundary = '2'
[]
[temp_side3]
type = NekSideIntegral
field = temperature
boundary = '3'
[]
[temp_side4]
type = NekSideIntegral
field = temperature
boundary = '4'
[]
[temp_side5]
type = NekSideIntegral
field = temperature
boundary = '5'
[]
[temp_side6]
type = NekSideIntegral
field = temperature
boundary = '6'
[]
[temp_side7]
type = NekSideIntegral
field = temperature
boundary = '7'
[]
[temp_side8]
type = NekSideIntegral
field = temperature
boundary = '8'
[]
[pressure_side1]
type = NekSideIntegral
field = pressure
boundary = '1'
[]
[pressure_side2]
type = NekSideIntegral
field = pressure
boundary = '2'
[]
[pressure_side3]
type = NekSideIntegral
field = pressure
boundary = '3'
[]
[pressure_side4]
type = NekSideIntegral
field = pressure
boundary = '4'
[]
[pressure_side5]
type = NekSideIntegral
field = pressure
boundary = '5'
[]
[pressure_side6]
type = NekSideIntegral
field = pressure
boundary = '6'
[]
[pressure_side7]
type = NekSideIntegral
field = pressure
boundary = '7'
[]
[pressure_side8]
type = NekSideIntegral
field = pressure
boundary = '8'
[]
[velocity_avg1]
type = NekSideIntegral
field = velocity
boundary = '1'
[]
[velocity_avg2]
type = NekSideIntegral
field = velocity
boundary = '2'
[]
[velocity_avg3]
type = NekSideIntegral
field = velocity
boundary = '3'
[]
[velocity_avg4]
type = NekSideIntegral
field = velocity
boundary = '4'
[]
[velocity_avg5]
type = NekSideIntegral
field = velocity
boundary = '5'
[]
[velocity_avg6]
type = NekSideIntegral
field = velocity
boundary = '6'
[]
[velocity_avg7]
type = NekSideIntegral
field = velocity
boundary = '7'
[]
[velocity_avg8]
type = NekSideIntegral
field = velocity
boundary = '8'
[]
[velocity_comp1]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '1'
[]
[velocity_comp2]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '2'
[]
[velocity_comp3]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '3'
[]
[velocity_comp4]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '4'
[]
[velocity_comp5]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '5'
[]
[velocity_comp6]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '6'
[]
[velocity_comp7]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '7'
[]
[velocity_comp8]
type = NekSideIntegral
field = velocity_component
velocity_direction = '0.1 -0.2 0.3'
boundary = '8'
[]
[]
(test/tests/conduction/zero_flux/nek.i)
[Problem]
type = NekRSProblem
casename = 'pyramid'
[]
[Mesh]
type = NekRSMesh
boundary = '1 2 3 4 5 6 7 8'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/cht/pebble/nek.i)
[Mesh]
type = NekRSMesh
boundary = '1'
# nekRS solves with a length scale of meters, but nek_master.i is currently solving
# in terms of centimeters. Therefore, just for the sake of data transfers, we need to
# scale NekRSMesh to centimeters.
scaling = 100.0
[]
[Problem]
type = NekRSProblem
casename = 'onepebble2'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
[Postprocessors]
# This is the heat flux in the nekRS solution, i.e. it is not an integral
# of nrs->usrwrk, instead this is directly an integral of k*grad(T)*hat(n).
# So this should closely match 'flux_integral'
[flux_in_nek]
type = NekHeatFluxIntegral
boundary = '1'
[]
[max_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = max
[]
[min_nek_T]
type = NekVolumeExtremeValue
field = temperature
value_type = min
[]
[]
(tutorials/pebble_cht/nek.i)
[Mesh]
type = NekRSMesh
# This is the boundary we are coupling via conjugate heat transfer to MOOSE
boundary = '3'
[]
[Problem]
type = NekRSProblem
casename = 'pebble'
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[layered_bin]
type = LayeredBin
num_layers = 5
direction = z
[]
[wall_temp]
type = NekBinnedSideAverage
bins = 'layered_bin'
boundary = '3'
field = temperature
map_space_by_qp = true
interval = 10
[]
[bulk_temp]
type = NekBinnedVolumeAverage
bins = 'layered_bin'
field = temperature
map_space_by_qp = true
interval = 10
[]
[]
[VectorPostprocessors]
[wall]
type = SpatialUserObjectVectorPostprocessor
userobject = wall_temp
[]
[bulk]
type = SpatialUserObjectVectorPostprocessor
userobject = bulk_temp
[]
[]
[Outputs]
exodus = true
csv = true
interval = 10
hide = 'flux_integral'
[]
(test/tests/nek_temp/exact/exact.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
output = 'temperature'
[]
[Mesh]
type = NekRSMesh
exact = true
boundary = '1'
[]
[AuxVariables]
[analytic]
[]
[error_temp]
order = CONSTANT
family = MONOMIAL
[]
[difference]
[]
[]
[ICs]
[analytic]
type = FunctionIC
variable = analytic
function = analytic
[]
[]
[AuxKernels]
[error_temp]
type = ElementL2ErrorFunctionAux
variable = error_temp
coupled_variable = temp
function = analytic
[]
[difference]
type = ParsedAux
variable = difference
coupled_variables = 'analytic temp'
expression = 'temp-analytic'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Functions]
[analytic]
type = ParsedFunction
expression = 'exp(x)+sin(y)+x*y*z'
[]
[]
[Postprocessors]
[l2_error_in_nek_temp]
type = ElementL2Error
variable = temp
function = analytic
[]
[max_diff]
type = NodalExtremeValue
variable = difference
value_type = max
[]
[min_diff]
type = NodalExtremeValue
variable = difference
value_type = min
[]
[]
[Outputs]
exodus = true
execute_on = 'final'
hide = 'difference error_temp analytic'
[]
(test/tests/userobjects/subchannel_layered/duplicate_directions.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
[]
[UserObjects]
[subchannel_binning]
type = HexagonalSubchannelBin
bundle_pitch = 0.02583914354890463
pin_pitch = 0.0089656996
pin_diameter = 7.646e-3
n_rings = 2
[]
[axial_binning]
type = LayeredBin
direction = z
num_layers = 6
[]
[x_bins]
type = LayeredBin
direction = x
num_layers = 3
[]
# should error due to duplicate bins
[vol_avg]
type = NekBinnedVolumeAverage
bins = 'subchannel_binning axial_binning x_bins'
field = temperature
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/userobjects/side/dimensional/nek.i)
[GlobalParams]
check_boundary_restricted = false
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'sfr_7pin'
output = 'temperature pressure velocity'
[]
[AuxVariables]
[avg_T]
family = MONOMIAL
order = CONSTANT
[]
[avg_p]
family = MONOMIAL
order = CONSTANT
[]
[avg_v]
family = MONOMIAL
order = CONSTANT
[]
[integral_T]
family = MONOMIAL
order = CONSTANT
[]
[integral_p]
family = MONOMIAL
order = CONSTANT
[]
[integral_v]
family = MONOMIAL
order = CONSTANT
[]
[]
[AuxKernels]
[avg_T]
type = SpatialUserObjectAux
variable = avg_T
user_object = avg_T
boundary = '2'
[]
[avg_p]
type = SpatialUserObjectAux
variable = avg_p
user_object = avg_p
boundary = '2'
[]
[avg_v]
type = SpatialUserObjectAux
variable = avg_v
user_object = avg_v
boundary = '2'
[]
[integral_T]
type = SpatialUserObjectAux
variable = integral_T
user_object = integral_T
boundary = '2'
[]
[integral_p]
type = SpatialUserObjectAux
variable = integral_p
user_object = integral_p
boundary = '2'
[]
[integral_v]
type = SpatialUserObjectAux
variable = integral_v
user_object = integral_v
boundary = '2'
[]
[]
[UserObjects]
[x]
type = LayeredBin
direction = x
num_layers = 2
[]
[y]
type = LayeredBin
direction = y
num_layers = 2
[]
[z]
type = LayeredBin
direction = z
num_layers = 3
[]
[avg_T]
type = NekBinnedSideAverage
bins = 'x y z'
field = temperature
boundary = '2'
[]
[avg_p]
type = NekBinnedSideAverage
bins = 'x y z'
field = pressure
boundary = '2'
[]
[avg_v]
type = NekBinnedSideAverage
bins = 'x y z'
field = velocity
boundary = '2'
[]
[integral_T]
type = NekBinnedSideIntegral
bins = 'x y z'
field = temperature
boundary = '2'
[]
[integral_p]
type = NekBinnedSideIntegral
bins = 'x y z'
field = pressure
boundary = '2'
[]
[integral_v]
type = NekBinnedSideIntegral
bins = 'x y z'
field = velocity
boundary = '2'
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
file_base = nek_dim
[]
(test/tests/nek_mesh/exact/exact.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'brick'
[]
[Mesh]
type = NekRSMesh
exact = true
boundary = '1 3'
[]
(test/tests/nek_errors/no_occa_source_kernel/nek.i)
[Problem]
type = NekRSProblem
casename = 'cube'
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
[]
(test/tests/nek_standalone/lowMach/nek_boundary.i)
[Mesh]
type = NekRSMesh
boundary = '1'
order = SECOND
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'lowMach'
output = 'pressure velocity temperature'
# We omit the non-dimensional settings here in order to just extract the
# non-dimensional solution as-is, without dimensionalizing it.
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Postprocessors]
[max_T_side]
type = NekSideExtremeValue
field = temperature
value_type = max
boundary = '1'
[]
[max_T_side_output]
type = NodalExtremeValue
variable = temp
value_type = max
[]
[max_T_side_diff]
type = DifferencePostprocessor
value1 = max_T_side
value2 = max_T_side_output
[]
[min_T_side]
type = NekSideExtremeValue
field = temperature
value_type = min
boundary = '1'
[]
[min_T_side_output]
type = NodalExtremeValue
variable = temp
value_type = min
[]
[min_T_side_diff]
type = DifferencePostprocessor
value1 = min_T_side
value2 = min_T_side_output
[]
[max_Vx_side]
type = NekSideExtremeValue
field = velocity_x
value_type = max
boundary = '1'
[]
[max_Vx_side_output]
type = NodalExtremeValue
variable = vel_x
value_type = max
[]
[max_Vx_side_diff]
type = DifferencePostprocessor
value1 = max_Vx_side
value2 = max_Vx_side_output
[]
[min_Vx_side]
type = NekSideExtremeValue
field = velocity_x
value_type = min
boundary = '1'
[]
[min_Vx_side_output]
type = NodalExtremeValue
variable = vel_x
value_type = min
[]
[min_Vx_side_diff]
type = DifferencePostprocessor
value1 = min_Vx_side
value2 = min_Vx_side_output
[]
[max_p_side]
type = NekSideExtremeValue
field = pressure
value_type = max
boundary = '1'
[]
[max_p_side_output]
type = NodalExtremeValue
variable = P
value_type = max
[]
[min_p_side_diff]
type = DifferencePostprocessor
value1 = min_p_side
value2 = min_p_side_output
[]
[min_p_side]
type = NekSideExtremeValue
field = pressure
value_type = min
boundary = '1'
[]
[min_p_side_output]
type = NodalExtremeValue
variable = P
value_type = min
[]
[max_p_side_diff]
type = DifferencePostprocessor
value1 = max_p_side
value2 = max_p_side_output
[]
[avg_T_side]
type = NekSideAverage
field = temperature
boundary = '1'
[]
[avg_T_side_output]
type = ElementAverageValue
variable = temp
[]
[avg_T_side_diff]
type = DifferencePostprocessor
value1 = avg_T_side
value2 = avg_T_side_output
[]
[avg_Vx_side]
type = NekSideAverage
field = velocity_x
boundary = '1'
[]
[avg_Vx_side_output]
type = ElementAverageValue
variable = vel_x
[]
[avg_Vx_side_diff]
type = DifferencePostprocessor
value1 = avg_Vx_side
value2 = avg_Vx_side_output
[]
[avg_p_side]
type = NekSideAverage
field = pressure
boundary = '1'
[]
[avg_p_side_output]
type = ElementAverageValue
variable = P
[]
[avg_p_side_diff]
type = DifferencePostprocessor
value1 = avg_p_side
value2 = avg_p_side_output
[]
[]
[Outputs]
csv = true
exodus = true
execute_on = 'final'
hide = 'max_Vx_side max_Vx_side_output max_p_side max_p_side_output min_Vx_side min_Vx_side_output min_p_side min_p_side_output avg_Vx_side avg_Vx_side_output avg_p_side avg_p_side_output max_T_side max_T_side_output min_T_side min_T_side_output avg_T_side avg_T_side_output'
[]
(test/tests/nek_mesh/sidesets/cube/exact_volume.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'cube'
[]
[Mesh]
type = NekRSMesh
volume = true
exact = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
file_base = 'nek_volume_out'
csv = true
[]
[Postprocessors]
[area_side1_nek]
type = NekSideIntegral
field = unity
boundary = '1'
[]
[area_side1_moose]
type = AreaPostprocessor
boundary = '1'
[]
[area_side2_nek]
type = NekSideIntegral
field = unity
boundary = '2'
[]
[area_side2_moose]
type = AreaPostprocessor
boundary = '2'
[]
[area_side3_nek]
type = NekSideIntegral
field = unity
boundary = '3'
[]
[area_side3_moose]
type = AreaPostprocessor
boundary = '3'
[]
[area_side4_nek]
type = NekSideIntegral
field = unity
boundary = '4'
[]
[area_side4_moose]
type = AreaPostprocessor
boundary = '4'
[]
[area_side5_nek]
type = NekSideIntegral
field = unity
boundary = '5'
[]
[area_side5_moose]
type = AreaPostprocessor
boundary = '5'
[]
[area_side6_nek]
type = NekSideIntegral
field = unity
boundary = '6'
[]
[area_side6_moose]
type = AreaPostprocessor
boundary = '6'
[]
[]
(tutorials/pincell_multiphysics/nek.i)
inlet_T = 573.0 # inlet temperature
power = 250 # total power (W)
Re = 500.0 # Reynolds number
pin_diameter = 0.97e-2 # pin outer diameter
pin_pitch = 1.28e-2 # pin pitch
mu = 8.8e-5 # fluid dynamic viscosity
rho = 723.6 # fluid density
Cp = 5512.0 # fluid isobaric specific heat capacity
flow_area = ${fparse pin_pitch * pin_pitch - pi * pin_diameter * pin_diameter / 4.0}
wetted_perimeter = ${fparse pi * pin_diameter}
hydraulic_diameter = ${fparse 4.0 * flow_area / wetted_perimeter}
U_ref = ${fparse Re * mu / rho / hydraulic_diameter}
mdot = ${fparse rho * U_ref * flow_area}
dT = ${fparse power / mdot / Cp}
[Mesh]
type = NekRSMesh
boundary = '1'
scaling = ${hydraulic_diameter}
volume = true
[]
[Problem]
type = NekRSProblem
casename = 'fluid'
nondimensional = true
L_ref = ${hydraulic_diameter}
T_ref = ${inlet_T}
U_ref = ${U_ref}
dT_ref = ${dT}
rho_0 = ${rho}
Cp_0 = ${Cp}
has_heat_source = false
synchronization_interval = parent_app
[]
[Postprocessors]
[outlet_T]
type = NekMassFluxWeightedSideAverage
field = temperature
boundary = '3'
[]
[max_T]
type = NekVolumeExtremeValue
field = temperature
[]
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[Outputs]
exodus = true
interval = 10
[]
(test/tests/nek_file_output/avg_plugin/nek.i)
[Mesh]
type = NekRSMesh
volume = true
[]
[Problem]
type = NekRSStandaloneProblem
casename = 'turbPipe'
# We omit the non-dimensional settings here in order to just extract the
# non-dimensional solution as-is, without dimensionalizing it.
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
(test/tests/userobjects/nek_scalar_value/nek_standalone.i)
[Problem]
type = NekRSStandaloneProblem
casename = 'pyramid'
n_usrwrk_slots = 1
[]
[Mesh]
type = NekRSMesh
volume = true
[]
[Executioner]
type = Transient
[TimeStepper]
type = NekTimeStepper
[]
[]
[UserObjects]
[scalar1]
type = NekScalarValue
[]
[scalar2]
type = NekScalarValue
[]
[]
[Controls]
[func_control]
type = RealFunctionControl
parameter = 'UserObjects/scalar1/value'
function = 'val'
execute_on = 'timestep_begin'
[]
[func_control2]
type = RealFunctionControl
parameter = 'UserObjects/scalar2/value'
function = 'val2'
execute_on = 'timestep_begin'
[]
[]
[Functions]
[val]
type = ParsedFunction
expression = 'if (t > 1, 200.0, 100.0)'
[]
[val2]
type = ParsedFunction
expression = 'if (t > 1, 400.0, 300.0)'
[]
[]
[Postprocessors]
[avg_t_5]
type = NekSideAverage
field = temperature
boundary = '5'
[]
[avg_t_6]
type = NekSideAverage
field = temperature
boundary = '6'
[]
[]
[Outputs]
exodus = true
csv = true
[]