# BCs System

under construction:Undocumented System

The BCs system has not been documented. The content listed below should be used as a starting point for documenting the system, which includes the typical automatic documentation associated with a system; however, what is contained is ultimately determined by what is necessary to make the documentation clear for users.


# BCs System

## Overview

!! Replace this line with information regarding the BCs system.

## Example Input File Syntax

!! Describe and include an example of how to use the BCs system.

!syntax list /BCs objects=True actions=False subsystems=False

!syntax list /BCs objects=False actions=False subsystems=True

!syntax list /BCs objects=False actions=True subsystems=False


## Available Objects

• Moose App
• ADDirichletBCImposes the essential boundary condition , where is a constant, controllable value.
• ADFunctionDirichletBCImposes the essential boundary condition , where is calculated by a function.
• ADFunctionNeumannBCImposes the integrated boundary condition , where is a (possibly) time and space-dependent MOOSE Function.
• ADFunctionPenaltyDirichletBCEnforces a (possibly) time and space-dependent MOOSE Function Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• ADFunctionPresetBCThe same as ADFunctionDirichletBC except the value is applied before the solve begins
• ADNeumannBCImposes the integrated boundary condition , where is a constant, controllable value.
• ADPenaltyDirichletBCEnforces a Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• ADVectorFunctionDirichletBCImposes the essential boundary condition , where components are calculated with functions.
• ADVectorMatchedValueBCImplements a ADVectorNodalBC which equates two different Variables' values on a specified boundary.
• ArrayDirichletBCImposes the essential boundary condition , where are constant, controllable values.
• ArrayPenaltyDirichletBCEnforces a Dirichlet boundary condition in a weak sense with , where is the constant scalar penalty; is the test functions and is the differences between the current solution and the Dirichlet data.
• ArrayVacuumBCImposes the Robin boundary condition .
• ConvectiveFluxBCDetermines boundary values via the initial and final values, flux, and exposure duration
• CoupledVarNeumannBCImposes the integrated boundary condition , where is a variable.
• DGFunctionDiffusionDirichletBC
• DiffusionFluxBCComputes a boundary residual contribution consistent with the Diffusion Kernel. Does not impose a boundary condition; instead computes the boundary contribution corresponding to the current value of grad(u) and accumulates it in the residual vector.
• DirichletBCImposes the essential boundary condition , where is a constant, controllable value.
• EigenArrayDirichletBCArray Dirichlet BC for eigenvalue solvers
• EigenDirichletBCDirichlet BC for eigenvalue solvers
• FunctionDirichletBCImposes the essential boundary condition , where is a (possibly) time and space-dependent MOOSE Function.
• FunctionGradientNeumannBCImposes the integrated boundary condition arising from integration by parts of a diffusion/heat conduction operator, and where the exact solution can be specified.
• FunctionNeumannBCImposes the integrated boundary condition , where is a (possibly) time and space-dependent MOOSE Function.
• FunctionPenaltyDirichletBCEnforces a (possibly) time and space-dependent MOOSE Function Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• FunctionPresetBCThe same as FunctionDirichletBC except the value is applied before the solve begins. Deprecated: use FunctionDirichletBC with preset = true instead.
• LagrangeVecDirichletBCImposes the essential boundary condition , where are constant, controllable values.
• LagrangeVecFunctionDirichletBCImposes the essential boundary condition , where components are calculated with functions.
• MatchedValueBCImplements a NodalBC which equates two different Variables' values on a specified boundary.
• NeumannBCImposes the integrated boundary condition , where is a constant, controllable value.
• OneDEqualValueConstraintBC
• PenaltyDirichletBCEnforces a Dirichlet boundary condition in a weak sense by penalizing differences between the current solution and the Dirichlet data.
• PostprocessorDirichletBC
• PostprocessorNeumannBC
• PresetBCSimilar to DirichletBC except the value is applied before the solve begins. Deprecated: use DirichletBC with preset = true instead.
• SinDirichletBCImposes a time-varying essential boundary condition , where varies from an given initial value at time to a given final value over a specified duration.
• SinNeumannBCImposes a time-varying flux boundary condition , where varies from an given initial value at time to a given final value over a specified duration.
• VacuumBC
• VectorDirichletBCImposes the essential boundary condition , where are constant, controllable values.
• VectorFunctionDirichletBCImposes the essential boundary condition , where components are calculated with functions.
• VectorNeumannBCImposes the integrated boundary condition , where is a user-defined, constant vector.
• VectorPenaltyDirichletBCEnforces a Dirichlet boundary condition for vector nonlinear variables in a weak sense by applying a penalty to the difference in the current solution and the Dirichlet data.
• WeakGradientBCComputes a boundary residual contribution consistent with the Diffusion Kernel. Does not impose a boundary condition; instead computes the boundary contribution corresponding to the current value of grad(u) and accumulates it in the residual vector.
• Rdg App
• AEFVBCA boundary condition kernel for the advection equation using a cell-centered finite volume method.
• Heat Conduction App
• ADConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by material properties.
• ConvectiveFluxFunctionDetermines boundary value by fluid heat transfer coefficient and far-field temperature
• ConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by material properties.
• CoupledConvectiveFlux
• CoupledConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by auxiliary variables.
• GapHeatTransferTransfers heat across a gap between two surfaces dependent on the gap geometry specified.
• GrayLambertNeumannBCThis BC imposes a heat flux density that is computed from the GrayLambertSurfaceRadiationBase userobject.
• HeatConductionBC
• InfiniteCylinderRadiativeBCBoundary condition for radiative heat exchange with a cylinderwhere the boundary is approximated as a cylinder as well.
• Porous Flow App
• PorousFlowHalfCubicSinkApplies a flux sink to a boundary. The base flux defined by PorousFlowSink is multiplied by a cubic.
• PorousFlowHalfGaussianSinkApplies a flux sink to a boundary. The base flux defined by PorousFlowSink is multiplied by a Gaussian.
• PorousFlowPiecewiseLinearSinkApplies a flux sink to a boundary. The base flux defined by PorousFlowSink is multiplied by a piecewise linear function.
• PorousFlowSinkApplies a flux sink to a boundary.
• Tensor Mechanics App
• ADPressureApplies a pressure on a given boundary in a given direction
• CoupledPressureBCApplies a pressure from a variable on a given boundary in a given direction
• DashpotBC
• DisplacementAboutAxisImplements a boundary condition that enforces rotationaldisplacement around an axis on a boundary
• InteractionIntegralBenchmarkBCImplements a boundary condition that enforces a displacement field around a crack tip based on applied stress intensity factors.
• PenaltyInclinedNoDisplacementBCPenalty Enforcement of an inclined boundary condition
• PresetAccelerationPrescribe acceleration on a given boundary in a given direction
• PresetDisplacementPrescribe the displacement on a given boundary in a given direction.
• PresetVelocity
• PressureApplies a pressure on a given boundary in a given direction
• StickyBCImposes the boundary condition if exceeds the bounds provided
• Functional Expansion Tools App
• FXFluxBCSets a flux boundary condition, evaluated using a FunctionSeries instance. This does not fix the flux, but rather 'strongly encourages' flux agreement by penalizing the differences through contributions to the residual.
• FXValueBCImposes a fixed value boundary condition, evaluated using a FunctionSeries instance.
• FXValuePenaltyBCSets a value boundary condition, evaluated using a FunctionSeries instance. This does not fix the value, but rather 'strongly encourages' value agreement by penalizing the differences through contributions to the residual.
• Navier Stokes App
• AdvectionBCBoundary conditions for outflow/outflow of advected quantities: phi * velocity * normal, where phi is the advected quantitiy
• EnergyFreeBC
• INSADMomentumNoBCBCThis class implements the 'No BC' boundary condition based on the 'Laplace' form of the viscous stress tensor.
• INSMomentumNoBCBCLaplaceFormThis class implements the 'No BC' boundary condition based on the 'Laplace' form of the viscous stress tensor.
• INSMomentumNoBCBCTractionFormThis class implements the 'No BC' boundary condition based on the 'traction' form of the viscous stress tensor.
• INSTemperatureNoBCBCThis class implements the 'No BC' boundary condition discussed by Griffiths, Papanastiou, and others.
• ImplicitNeumannBCThis class implements a form of the Neumann boundary condition in which the boundary term is treated 'implicitly'.
• MassFreeBC
• MomentumFreeBC
• MomentumFreeSlipBC
• NSEnergyInviscidSpecifiedBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidSpecifiedDensityAndVelocityBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidSpecifiedNormalFlowBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidSpecifiedPressureBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyInviscidUnspecifiedBCThis class corresponds to the inviscid part of the 'natural' boundary condition for the energy equation.
• NSEnergyViscousBCThis class couples together all the variables for the compressible Navier-Stokes equations to allow them to be used in derived IntegratedBC classes.
• NSEnergyWeakStagnationBCThe inviscid energy BC term with specified normal flow.
• NSImposedVelocityBCImpose Velocity BC.
• NSImposedVelocityDirectionBCThis class imposes a velocity direction component as a Dirichlet condition on the appropriate momentum equation.
• NSInflowThermalBCThis class is used on a boundary where the incoming flow values (rho, u, v, T) are all completely specified.
• NSMassSpecifiedNormalFlowBCThis class implements the mass equation boundary term with a specified value of rho*(u.n) imposed weakly.
• NSMassUnspecifiedNormalFlowBCThis class implements the mass equation boundary term with the rho*(u.n) boundary integral computed implicitly.
• NSMassWeakStagnationBCThe inviscid energy BC term with specified normal flow.
• NSMomentumConvectiveWeakStagnationBCThe convective part (sans pressure term) of the momentum equation boundary integral evaluated at specified stagnation temperature, stagnation pressure, and flow direction values.
• NSMomentumInviscidNoPressureImplicitFlowBCMomentum equation boundary condition used when pressure is not integrated by parts.
• NSMomentumInviscidSpecifiedNormalFlowBCMomentum equation boundary condition in which pressure is specified (given) and the value of the convective part is allowed to vary (is computed implicitly).
• NSMomentumInviscidSpecifiedPressureBCMomentum equation boundary condition in which pressure is specified (given) and the value of the convective part is allowed to vary (is computed implicitly).
• NSMomentumPressureWeakStagnationBCThis class implements the pressure term of the momentum equation boundary integral for use in weak stagnation boundary conditions.
• NSMomentumViscousBCThis class corresponds to the viscous part of the 'natural' boundary condition for the momentum equations.
• NSPenalizedNormalFlowBCThis class penalizes the the value of u.n on the boundary so that it matches some desired value.
• NSPressureNeumannBCThis kernel is appropriate for use with a 'zero normal flow' boundary condition in the context of the Euler equations.
• NSStagnationPressureBCThis Dirichlet condition imposes the condition p_0 = p_0_desired.
• NSStagnationTemperatureBCThis Dirichlet condition imposes the condition T_0 = T_0_desired.
• NSThermalBCNS thermal BC.
• Peridynamics App
• RBMPresetOldValuePDClass to apply a preset BC to nodes with rigid body motion (RBM).
• Chemical Reactions App
• ChemicalOutFlowBCChemical flux boundary condition
• XFEMApp
• CrackTipEnrichmentCutOffBCImposes the essential boundary condition , where is a constant, controllable value.