Skip to content

ENH: Generalized mesh support for diffusion module #15

Description

@nury12n

The single phase diffusion and homogenization model both assume 1D cartesian coordinates. It would be nice to extend this feature to other coordinate systems (radial/cylindrical and spherical). In addition, extended to 2D or 3D meshes would work as well.

My preferred solution would be to have Mesh class, that each coordinate system will inherit (ex. CartesianMesh, SphericalMesh, 3DMesh). These objects will have the necessary implementations to compute fluxes, time interval and updating composition, while all the diffusion models have to output is a diffusivity or equivalent.

Example pseudocode of what I'm hoping for

thermo  = Thermodynamics(...)
mesh = RadialMesh(rlimits, nodes)
model = DiffusionModel(thermo, mesh, other parameters)
model.solve(time)

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