Class MeshCarrier

Inheritance Relationships

Base Type

Class Documentation

class MeshCarrier : public opensn::Carrier

Object managing mesh data on GPU (for transport only).

Public Functions

MeshCarrier(LBSProblem &lbs_problem, TotalXSCarrier &xs, OutflowCarrier &outflow)

Constructor.

Public Members

std::uint64_t num_nodes_total

Total number of cell nodes in the mesh.

std::vector<std::uint64_t> saved_psi_offset

Vector storing offset for save angular flux for each cell.

Protected Functions

std::uint64_t ComputeSize(LBSProblem &lbs_problem)

Compute the memory size (in bytes) to allocate on the GPU to copy the mesh data over.

void Assemble(LBSProblem &lbs_problem, TotalXSCarrier &xs, OutflowCarrier &outflow)

Gather the data of each cell and faces into a contiguous chunk of memory on the host before copying the data to the device.