topologies

The topologies subpackage contains modules for INGRID supported grid topologies.


topologies.sf105

The sf105 module contains SF105 for representing a Snowflake-105 topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.sf105.SF105(Ingrid_obj: ingrid.Ingrid, config: str = 'SF105')

Bases: INGRID.utils.TopologyUtils

The SF105 class for handling Snowflake-105 configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SF105 object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()
set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.sf135

The sf135 module contains SF135 for representing a Snowflake-135 topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.sf135.SF135(Ingrid_obj: ingrid.Ingrid, config: str = 'SF135')

Bases: INGRID.utils.TopologyUtils

The SF135 class for handling Snowflake-135 configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SF135 object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()

Draws lines and creates patches for both USN and LSN configurations.

Patch Labeling Key:

I: Inner, O: Outer, DL: Divertor Leg, PF: Private Flux, T: Top, B: Bottom, S: Scrape Off Layer, C: Core.

set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.sf15

The sf15 module contains SF15 for representing a Snowflake-15 topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.sf15.SF15(Ingrid_obj: ingrid.Ingrid, config: str = 'SF15')

Bases: INGRID.utils.TopologyUtils

The SF15 class for handling Snowflake-15 configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SF15 object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

  • ConnexionMap – A mapping defining dependencies between Patch objects for grid generation.

  • patches – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()
set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.sf165

The sf165 module contains SF165 for representing a Snowflake-165 topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.sf165.SF165(Ingrid_obj: ingrid.Ingrid, config: str = 'SF165')

Bases: INGRID.utils.TopologyUtils

The SF165 class for handling Snowflake-165 configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SF165 object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()

Draws lines and creates patches for both USN and LSN configurations.

Patch Labeling Key:

I: Inner, O: Outer, DL: Divertor Leg, PF: Private Flux, T: Top, B: Bottom, S: Scrape Off Layer, C: Core.

set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.sf45

The sf45 module contains SF45 for representing a Snowflake-45 topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.sf45.SF45(Ingrid_obj: ingrid.Ingrid, config: str = 'SF45')

Bases: INGRID.utils.TopologyUtils

The SF45 class for handling Snowflake-45 configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SF45 object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()
set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.sf75

The sf75 module contains SF75 for representing a Snowflake-75 topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.sf75.SF75(Ingrid_obj: ingrid.Ingrid, config: str = 'SF75')

Bases: INGRID.utils.TopologyUtils

The SF75 class for handling Snowflake-75 configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SF75 object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()
set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.snl

The snl module contains SNL for representing a single-null topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.snl.SNL(Ingrid_obj: ingrid.Ingrid, config: str)

Bases: INGRID.utils.TopologyUtils

The SNL class for handling Lower Single Null (LSN) and Upper Single Null (USN) configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the SNL object is being managed by.

  • config (str) – String code representing the configuration (for SNL it can be ‘LSN’ or ‘USN’).

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()

Create the Patch map with LineTracing.

set_gridue()

Prepares a gridue_settings dictionary with required data for writing a gridue file.


topologies.udn

The udn module contains UDN for representing an unbalanced double-null topology/configuration.

Child of base utils.TopologyUtils.

class INGRID.topologies.udn.UDN(Ingrid_obj: ingrid.Ingrid, config: UDN)

Bases: INGRID.utils.TopologyUtils

The UDN class for handling Unbalanced Double Null configurations within a tokamak.

Parameters
  • Ingrid_obj (Ingrid) – Ingrid object the UDN object is being managed by.

  • config (str, optional) – String code representing the configuration.

Variables
  • ConnexionMap (dict) – A mapping defining dependencies between Patch objects for grid generation.

  • patches (dict) – The collection of Patch objects representing the topology.

AdjustGrid() None

Adjust the grid so that no holes occur at x-points, and cell grid faces are alligned

A small epsilon radius is swept out around x-points during Patch line tracing. This simple tidies up a grid.

Parameters

patch (Patch) – The patch to tidy up (will only adjust if next to x-point).

AdjustPatch(patch)
GroupPatches()
OrderPatches()
construct_patches()
set_gridue() dict

Prepares a gridue_settings dictionary with required data for writing a gridue file.