The Accumulator (Boundary) feature transfers information from rays to the boundaries they hit or pass through. Each
Accumulator defines a variable, called the accumulated variable, on the selected boundaries. The accumulated variable is discretized using constant shape functions, so its value if uniform over every mesh element and may be discontinuous between adjacent mesh elements.
The name of the accumulated variable is specified in the Accumulated variable name edit field in the
Accumulator Settings section of the settings window. The default variable name,
rpb, will be used in the remainder of this section when referring to the accumulated variable.
The options in the Accumulator type list are
Density and
Count. If
Density is selected, the source term is divided by the surface area or length of the boundary mesh element when calculating each ray’s contribution to the accumulated variable. If
Count is selected, no division by the surface area or length of the boundary element occurs.
The equations in the following section are valid for the Density type. The corresponding value of the accumulated variable for the
Count type is
where V is the boundary element surface area (in 3D) or length (in 2D).
When Rays in boundary elements is selected from the
Accumulate over list, the accumulated variable in a boundary element gets incremented by the source term
R whenever a ray freezes or sticks to the boundary:
where division by the mesh element area or length occurs because the accumulator is assumed to be of type Density. Thus the source term evaluated for an incident ray is uniformly distributed over the boundary element it freezes or sticks to.
If instead Ray-wall interactions is selected from the
Accumulate over list, then the accumulated variable gets incremented regardless of what type of ray-wall interaction occurs. Thus, it is possible for the same ray to increment the accumulated variable in many different boundary elements, or even in the same element multiple times.
By default, the boundary Accumulator defines the following global variables:
Here, <scope> includes the physics interface name and the names the Accumulator and parent feature. For example, the average of the accumulated variable over a boundary may be called rac
.wall1.bacc1.rpb_ave, where
rac is the name of the Ray Acoustics interface,
wall1 is the name of the parent Wall node,
bacc1 is the name of the Accumulator node, and
rpb is the accumulated variable name. These variables are all available in the
Add/Replace Expression menus during results evaluation.
Here, <wscope> is the scope of the parent boundary feature, e.g.
goprac.wall1.