Skip to content

cryostat

Calculate cryostat geometries

cryostat_geometry(r_cryostat_inboard, dr_cryostat, z_cryostat_half_inside)

Calculates rectangular geometries of the cryostat

Parameters:

Name Type Description Default
r_cryostat_inboard float

cryostat internal radius

required
dr_cryostat float

external cryostat thickness

required
z_cryostat_half_inside float

cryostat internal half-height

required

Returns:

Type Description
list[RectangleGeometry]

list of RectangleGeometry - dataclass returning rectangular geometry parameters

Source code in process/models/geometry/cryostat.py
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
def cryostat_geometry(
    r_cryostat_inboard: float, dr_cryostat: float, z_cryostat_half_inside: float
) -> list[RectangleGeometry]:
    """Calculates rectangular geometries of the cryostat

    Parameters
    ----------
    r_cryostat_inboard:
        cryostat internal radius
    dr_cryostat:
        external cryostat thickness
    z_cryostat_half_inside:
        cryostat internal half-height

    Returns
    -------
    :
        list of RectangleGeometry - dataclass returning rectangular geometry parameters
    """
    # The cryostat is represented by 4 rectangular sections as follows:

    # rectangle representing vertical part of cryostat above the midplane
    rect1 = RectangleGeometry(
        anchor_x=r_cryostat_inboard,
        anchor_z=0,
        width=dr_cryostat,
        height=(z_cryostat_half_inside + dr_cryostat),
    )

    # rectangle representing vertical part of cryostat below the midplane
    rect2 = RectangleGeometry(
        anchor_x=r_cryostat_inboard,
        anchor_z=0,
        width=dr_cryostat,
        height=-(z_cryostat_half_inside + dr_cryostat),
    )

    # rectangle representing horizontal part of cryostat above the midplane
    rect3 = RectangleGeometry(
        anchor_x=0,
        anchor_z=z_cryostat_half_inside,
        width=r_cryostat_inboard,
        height=dr_cryostat,
    )

    # rectangle representing horizontal part of cryostat below the midplane
    rect4 = RectangleGeometry(
        anchor_x=0,
        anchor_z=-z_cryostat_half_inside,
        width=r_cryostat_inboard,
        height=-dr_cryostat,
    )
    return [rect1, rect2, rect3, rect4]