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

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions