Material Builder¶
Higher-level contruction of materials from voxel specification |
|
|
Overloaded function. |
Basic specification (index, volume fraction, zone) of a voxel (composite if more than one phase) |
|
Order or elements in memory for multidimentional arrays represented by vector<> or, alternatively, order of linearized positions |
- class py4amitex.input.materialbuilder.MaterialBuilder¶
Higher-level contruction of materials from voxel specification
note: This module is concerned with construction of zones and composite specification, the user must specify the material behavior (law, coefficient)
- addVoxel(*args, **kwargs)¶
Overloaded function.
addVoxel(self: py4amitex.input.materialbuilder.MaterialBuilder, materials: py4amitex.input.Materials, position: int, spec: py4amitex.input.materialbuilder.VoxelSpec, normal: Annotated[list[float], FixedSize(3)] = [1.0, 0.0, 0.0]) -> None
Add a voxel with phases of (num_material, volume phraction)
- Parameter
materials: where the voxel will be added
- Parameter
pos: linear position
- Parameter
spec: voxel specification
- Parameter
normal: normal of the interface
addVoxel(self: py4amitex.input.materialbuilder.MaterialBuilder, materials: py4amitex.input.Materials, position: int, numMaterial: int, zone: int = 0) -> None
Add a non-composite voxel
- Parameter
numM: index of material
- class py4amitex.input.materialbuilder.VoxelSpec¶
Basic specification (index, volume fraction, zone) of a voxel (composite if more than one phase)
- __init__(*args, **kwargs)¶
Overloaded function.
__init__(self: py4amitex.input.materialbuilder.VoxelSpec) -> None
__init__(self: py4amitex.input.materialbuilder.VoxelSpec, phases: list[tuple[int, float]]) -> None
- Parameter
phases: list of (material index, volume fraction)
__init__(self: py4amitex.input.materialbuilder.VoxelSpec, phases: list[tuple[int, float, int]]) -> None
- Parameter
phases: list of (material index, volume fraction)
- property phases¶
(material index, volume fraction, zone)
- class py4amitex.input.materialbuilder.IndexOrdering¶
Order or elements in memory for multidimentional arrays represented by vector<> or, alternatively, order of linearized positions
Members:
C
Fortran
- property name¶
- py4amitex.input.materialbuilder.buildMaterials(*args, **kwargs)¶
Overloaded function.
buildMaterials(materials: py4amitex.input.Materials, dims: Annotated[list[int], FixedSize(3)], phases: list[py4amitex.input.materialbuilder.VoxelSpec], ordering: py4amitex.input.materialbuilder.IndexOrdering = <IndexOrdering.C: 0>) -> None
Build materials from a list of all voxels (ie indexed by their linearized positions)
- Parameter
phases: array as field of voxel specs
- Parameter
ordering: ordering of positions
buildMaterials(materials: py4amitex.input.Materials, dims: Annotated[list[int], FixedSize(3)], phases: list[tuple[py4amitex.input.materialbuilder.VoxelSpec, Annotated[list[float], FixedSize(3)]]], ordering: py4amitex.input.materialbuilder.IndexOrdering = <IndexOrdering.C: 0>) -> None
Build materials from a list of all voxels (ie indexed by their linearized positions) with normal information
- Parameter
phases: array as tuple (voxel specs, normal)
- Parameter
ordering: ordering of positions
buildMaterials(materials: py4amitex.input.Materials, dims: Annotated[list[int], FixedSize(3)], phases: list[list[tuple[int, float]]], ordering: py4amitex.input.materialbuilder.IndexOrdering = <IndexOrdering.C: 0>) -> None
buildMaterials(materials: py4amitex.input.Materials, dims: Annotated[list[int], FixedSize(3)], phases: list[tuple[list[tuple[int, float]], Annotated[list[float], FixedSize(3)]]], ordering: py4amitex.input.materialbuilder.IndexOrdering = <IndexOrdering.C: 0>) -> None
With normals
buildMaterials(materials: py4amitex.input.Materials, dims: Annotated[list[int], FixedSize(3)], phases: list[int], ordering: py4amitex.input.materialbuilder.IndexOrdering = <IndexOrdering.C: 0>) -> None
Pure phase only