Muscat.FE.Integrators.NativeKokkosIntegration module

CheckIntegrity(GUI: bool = False)
class IntegrationKokkos

Bases: object

Allocate()
Compute(nbThreads=None)

Kokkos implementaiton of the integration, this is a gil free functions

the argument nbThreads si ignored. To set the number of nbThreads, use the Muscat.Helpers.CPU module at the begining of your app

GetK()

Get K as a scipy.sparse.coo_matrix

Returns:

K – the assembled matrix

Return type:

coo_matrix

GetKvij()

Get the values to build the operator

Returns:

  • values (ndarray) – values of the operator

  • tuple ((ndarray,ndarray)) – indices (i,j)

GetLinearSystemSize()

Get the size of the Linear System

Returns:

  • nbrows (int) – Number of rows of the linear system

  • nbcols (int) – Number of columns of the linear system

GetRhs()
PreStartCheck()

Verification of some quantities before the integration

SetConstants(constants: dict[str, float])
SetElementFilter(elementFilter=typing.Optional[Muscat.MeshContainers.Filters.NativeFilters.CElementFilterEvaluated])
SetExtraFields(efs)
SetIntegrationRule(integrationRuleName: str = None, integrationRule=None)
SetMesh(mesh: Mesh | cNUM.CMesh)
SetOnlyEvaluation(onlyEvaluation: bool)
SetTestFields(testFields: None = None)
SetUnknownFields(unknownFields: None | list)
SetWeakForm(weakForm)