Generating the Mesostructure

class generate_mesostructure.Mesostructure(mesostructure_size=[100, 100, 100], configuration=None, resolution=False)[source]

Bases: object

This class generates micro/mesostructure by assembling the inclusion/aggregates on to the main micro/mesostructure

Parameters
  • mesostructure_size (array of size (3), type int, default:[100,100,100]) – Size of the mesostructure 3D matrix.

  • configuration (Configuration object) – Configuration object which provides details about the aggregate type and size distribution for assembly.

  • default (resolution array of size (3), type float,) – resolution of the mesostructure (resolution for the voxel format)

add_configuration(configuration)[source]

Add inclusion configuration to the assembly.

Parameters

configuration (Configuration object) – Configuration object which provides details about the aggregate type and size distribution for assembly.

assemble_sra(attempt_max=500000, threshold=50, iter_limit=10)[source]

Assemble aggregates/pores onto the mesostructure 3D matrix using Semi-Random Assembly (SRA) algorithm.

Parameters
  • attempt_max (int, default:500000) – Maximum number of unsuccessfull assembly attempts before temrinating the assembly algorithm.

  • threshold (int, default:50) – Number of unsuccessfull attempts after which the algorithm shifts to SRA (alorithm type-2) from RSA (algorithm type-1)

  • iter_limit (int, default:10) – Number of unsuccessfull attempts to try with the same particle/aggregate orientation before switching to another random orientation.

Returns

mat_meso – Mesostructure 3D array with aggregates/pores/particles assembled inside.

Return type

3D array of type int