upxo.pxtal.geotess module

Geometric tessellation class. This has the following components.

  1. class geotess2d for 2D voronoi tessellation grain structures.

  2. class vtess2d, inheriting from geotess2d

  3. class regtess2d, inheriting from geotess2d

  4. class semiregtess2d, inheriting from geotess2d

  5. class demiregtess2d, inheriting from geotess2d

geotess2d: parent class for generalized geometric tessellation

vtess2d: 2D Voronoi tessellation

regtess2d: Tessellation of regular polygons. Can make tessellations of
  1. Equilateral triangles

  2. SQuares

  3. REgular hexagons

semiregtess2d: Semi-regular tessellations. Also known as Archimedan

tessellations. Each vertex in a semiregtess2d has the same arrangement of polygons areound it.. Can make tessellations of

  1. triangles & Squares

  2. Triangles & Squares (but a different pattern)

  3. Hexagons & Triangles

  4. Hexagons & Triangles (but a different pattern)

  5. Hexagons & Triangles & Squares

  6. Octagons & Squares

  7. Dodecagons & Triangles

  8. Dodecagons & Squares & Hexagons

demiregtess2d: Demi-regular tessellations.

Dependencies

numpy matplotlib pandas shapely

Authors

Dr. Sunil Anandatheertha vaasu.anandatheertha@ukaea.com sunilanandatheertha@gmail.com

class upxo.pxtal.geotess.geotess2d(*, from_mcgs=False)[source]

Bases: object

Voronoi Tessellation grain structure in 2D.

bounds
Type:

x-axis and y-axis bounds

seeds
Type:

seed points: Numpy array

grid
Type:

x and y grid underlay: 2D Numpy arrays

jp
Type:

Unction points: UPXO point2d

vp
Type:

Vertex points: UPXO point2d

gbedges
Type:

List of all grain boundary edges: list(UPXO edge2d)

gbseg
Type:

List of all grain bounmdary segments: list(UPXO muledge2d)

xtals
Type:

List of grains: shapely polygons

gid
Type:

Grain indices values: list[int]

neigh_gid
Type:

Neighbour gid values: dict(gid: list(int))

prop
Type:

Property holder: Pandas dataframe

info
Type:

Meta data storage: dict

set_seed_points(upxo_mp2d=None)[source]

Set or update seed points.

make_seeds_random()[source]

Build and return seeds random.

make_seeds_pdisc()[source]

Build and return seeds pdisc.

make_seeds_dart()[source]

Build and return seeds dart.

set_seeds()[source]

Set or update seeds.

save()[source]

Save.

load()[source]

Load.

find_neighbours()[source]

Find neighbours.

find_first_nearest_neighbours()[source]

Find first nearest neighbours.

find_second_nearest_neighbours()[source]

Find second nearest neighbours.

filter_grains_by_prop()[source]

Filter grains by prop.

filter_grains_by_loc()[source]

Filter grains by loc.

divide_all_edges_in_half()[source]

Divide all edges in half.

move_new_vertex_point()[source]

Move new vertex point.

perturb_grain_boundaries(factor)[source]

Perturb grain boundaries.

convert_to_pixels()[source]

Convert to pixels.

bounds
seeds
grid
jp
vp
gbedges
gbseg
xtals
gid
neigh_gid
prop
info
class upxo.pxtal.geotess.geoxtal2d[source]

Bases: object

class upxo.pxtal.geotess.vtgs3d[source]

Bases: object

set_seeds()[source]

Set or update seeds.

save()[source]

Save.

load()[source]

Load.

filter_boundary_grains()[source]

Filter boundary grains.

filter_internal_grains()[source]

Filter internal grains.

bounds
xtals
seeds
grid
gid
jp
gbedges
neigh_gid
prop
info