Get desktop application:
View/edit binary Protocol Buffers messages
Defines the type of boundary condition to be used for each variable in a specific boundary. Next id: 7.
Used in: ,
The default option where no boundary condition is set. Results in an error if that direction is not periodic.
The Dirichlet boundary condition. A value needs to be specified for this type of boundary condition.
The Neumann boundary condition.
The Neumann boundary condition estimated with 2nd order scheme.
Maintains the current value for the specified boundary.
The periodic boundary condition.
The nonreflecting boundary condition. Using the "high" side of the domain as an example, a forward Euler with upwinding scheme is used to solve the boundary: ∂ϕ/∂t = - U* ∂ϕ/∂x In discrete form: ϕⱼⁿ⁺¹ = (1 - Δt U* /Δx) ϕⱼⁿ + (Δt U* /Δx) ϕⱼ₋₁ⁿ Similarly for "low" side of the domain boundary, we have a symmetric case: ∂ϕ/∂t = U* ∂ϕ/∂x In discrete form: ϕⱼⁿ⁺¹ = (1 - Δt U* /Δx) ϕⱼⁿ + (Δt U* /Δx) ϕⱼ₊₁ⁿ In the current implementation, U* is specified by the configuration through the value in the boundary condition and the mode (specified through `boundary_info.bc_params.nonreflecting_bc_mode`) setting as: For NONREFLECTING_LOCAL_MAX mode: U* = abs(max(u + u0, 0)) for the "high" side of the domain, and U* = abs(min(u - u0, 0)) for the "low" side of the domain. For NONREFLECTING_GLOBAL_MEAN mode: U* = abs(global_mean(u) + u0), for the "high" side of the domain, and U* = abs(global_mean(u) - u0), for the "low" side of the domain. For NONREFLECTING_GLOBAL_MAX mode: U* = abs(max(global_max(u), 0) + u0), for the "high" side of the domain, U* = abs(min(global_min(u), 0) - u0), for the "low" side of the domain. where u is the (spatially dependent) velocity field at the boundary (first inner fluid layer), while u0 is value specified for the boundary condition configuration.
Used in: ,
Used in:
Used in:
Used in: , ,
Messages encapsulating 3-D coordinates. Dimensions may correspond to x, y, and z, respectively, but need not.
Used in: ,
Marks strings in proto messages as paths to files, so they can be treated as such (e.g., the path needs to point to an existing file). See file_io.py for functions that work on Files.
Used in: ,
A message that parameterizes a distributed simulation. Next id: 13
Used in:
The shape or topology of compute cores.
The full grid length in each dimension. This is the length of the grid including padding, if any.
The grid size per core in each dimension.
The full grid size (over all cores) in each dimension. This is the physical grid size (padding is excluded).
The halo width.
The absolute time step per simulation finite difference step.
The convolutional kernel dimension.
The chunk size for input.
The number of splits for processing outputs.
The paths to files containing stretched grid data.
Specifies if the flow field is periodic in a direction.
Used in: