Skip to content

Support multi-component MeshFields backend #342

Description

@Sichao25

The current MeshFields backend assumes that the number of components is always 1. It should support fields with multi components. This work requires:

  • Updating the MeshFields API to handle multi-component fields.
  • Adding tests covering multi-component evaluation, serialization, and communication.

Known issue:
Supporting multi-component fields exposes an existing layout mismatch in the current implementation. The underlying Kokkos view is hardcoded with dof-major mapping, which is layout right. However, when device memory is enabled, GetDofHolderData() wraps the same memory with a layout left mdspan. This mismatch don't cause any issue in single-component fields, but it may lead to incorrect indexing for multi-component fields.

I'll provide the relevant code and implementation details once the PR #339 has been merged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions