Overview

Hypnos’ goal is to construct a geometry from the parameters you give it. The workflow is as follows:

  • Import parameters from a json file

  • Build geometry in cubit, imprint and merge

  • Add blocks, sidesets, and groups

  • Mesh and/or Export

This can be achieved either through running main.py, or in your own python script using the GeometryMaker class. These are explained in User Guide.

types of geometries

The following terminology will be used when describing geometries:

  • simple component: A single geometrical entity or collection of entities made of the same material. For example, the cladding of a pin is described by a ‘cladding’ simple component. These need not be ‘simple’ geometrically.

  • assembly: A collection of other components

  • component: A simple component or an assembly

Caution

This is probably a silly way of naming things.

json files

Hypnos uses json files to describe parameters of a component. Components are represented by dictionaries of parameters {"key": value }.

These will usually contain the following parameters:

  • "class": This must be declared to select a specific component

  • "material": The material this simple component is made of or a dictionary of materials used in this assembly

  • "geometry": The geometrical parameters describing this component.

Json file names containing a json object describing a component (ex. hcpb_pin.json) can be used where such a json object is expected by using a string with the file name (ex. {"class": "blanket" ... "components" : ["hpcb_pin.json"]})

Examples are given in sample json files in examples/.