Theme: Multistage

from mnflow.mfda.cad.dld.theme.multistage import DLD

The configurations introduced via config are mainly applied homogeneously accross all the stages except for valid keys with list of values. For example, in the following example, a list of values is provided for d_c, while Np and num_unit are assigned single integer values. Therefore, the number of stages is inferred to be 3 (from the list of values for critical diameter). The values from the list of d_c will be then applied heterogeneously to their corresponding stages, while a similar values of Np and num_unit will be applied to all stages homogeneously.

Note: More information about this scheme can be found from Davis et. al. (2006).

dld=DLD(
    config={
        'd_c':[18,10,5],
        'Np':10,
        'num_unit':2,
        },
    # post process transformations
    rot_last=90, # solely for better arrangement of layout in docs
    # image
    opt_save_image=True,
    img_dpu=0.5,
    )
----------------------------------------
core.DLD___Np:10_Nw:8_gap_w:38.828_pitch_w:77.656_gap_a:38.828_pitch_a:77.656_height:155.312_boundary_treatment:pow_3
block.DLD___num_unit:2_opt_mirror:False_array_counts:[1, 1]_opt_mirror_before_array:[False, False]
----------------------------------------
{'Np': 10,
 'Nw': 8,
 'area': 1297640.960826,
 'bb': [(-204.397, -38.828), (631.11, 1514.29)],
 'count of 1D arrays of core.DLD': 1,
 'd_c': 18.0,
 'lx': 835.5070000000001,
 'ly': 1553.118,
 'performance': {'Flow rate @ 1 bar/area (micro-liter/min/mm-sq)': 25789.77723919538,
                 'die area (mm-sq)': 1.2976409608259998,
                 'gap over crit. dia.': 2.157108371715726,
                 'volumetric flow rate at 1 bar (micro-liter/min)': 33465.871316157994},
 'resistance (Pa.sec/m^3)': 179287129365.82288,
 'volumetric flow rate at 1 bar (m^3/sec)': 5.577645219359667e-07,
 'volumetric flow rate at 1 bar (milli-liter/hr)': 2007.9522789694802}
----------------------------------------
core.DLD___Np:10_Nw:15_gap_w:21.571_pitch_w:43.142_gap_a:21.571_pitch_a:43.142_height:86.284_boundary_treatment:pow_3
block.DLD___num_unit:2_opt_mirror:False_array_counts:[1, 1]_opt_mirror_before_array:[False, False]
----------------------------------------
{'Np': 10,
 'Nw': 15,
 'area': 720911.3390640002,
 'bb': [(-148.224, -21.571), (687.282, 841.273)],
 'count of 1D arrays of core.DLD': 1,
 'd_c': 9.999999999999998,
 'lx': 835.5060000000001,
 'ly': 862.844,
 'performance': {'Flow rate @ 1 bar/area (micro-liter/min/mm-sq)': 14924.645937643018,
                 'die area (mm-sq)': 0.7209113390640001,
                 'gap over crit. dia.': 2.1571083717157262,
                 'volumetric flow rate at 1 bar (micro-liter/min)': 10759.346487962317},
 'resistance (Pa.sec/m^3)': 557654687179.4556,
 'volumetric flow rate at 1 bar (m^3/sec)': 1.7932244146603862e-07,
 'volumetric flow rate at 1 bar (milli-liter/hr)': 645.560789277739}
----------------------------------------
core.DLD___Np:10_Nw:29_gap_w:10.786_pitch_w:21.571_gap_a:10.786_pitch_a:21.571_height:43.142_boundary_treatment:pow_3
block.DLD___num_unit:2_opt_mirror:False_array_counts:[1, 1]_opt_mirror_before_array:[False, False]
----------------------------------------
{'Np': 10,
 'Nw': 29,
 'area': 360456.100954,
 'bb': [(-131.991, -10.786), (703.516, 420.636)],
 'count of 1D arrays of core.DLD': 1,
 'd_c': 4.999999999999999,
 'lx': 835.507,
 'ly': 431.422,
 'performance': {'Flow rate @ 1 bar/area (micro-liter/min/mm-sq)': 7213.570236086484,
                 'die area (mm-sq)': 0.360456100954,
                 'gap over crit. dia.': 2.1571083717157262,
                 'volumetric flow rate at 1 bar (micro-liter/min)': 2600.1754012575593},
 'resistance (Pa.sec/m^3)': 2307536636604.644,
 'volumetric flow rate at 1 bar (m^3/sec)': 4.333625668762599e-08,
 'volumetric flow rate at 1 bar (milli-liter/hr)': 156.0105240754536}
----------------------------------------
multistage.DLD__stages:

0:
core.DLD___Np:10_Nw:8_gap_w:38.828_pitch_w:77.656_gap_a:38.828_pitch_a:77.656_height:155.312_boundary_treatment:pow_3
block.DLD___num_unit:2_opt_mirror:False_array_counts:[1, 1]_opt_mirror_before_array:[False, False]

1:
core.DLD___Np:10_Nw:15_gap_w:21.571_pitch_w:43.142_gap_a:21.571_pitch_a:43.142_height:86.284_boundary_treatment:pow_3
block.DLD___num_unit:2_opt_mirror:False_array_counts:[1, 1]_opt_mirror_before_array:[False, False]

2:
core.DLD___Np:10_Nw:29_gap_w:10.786_pitch_w:21.571_gap_a:10.786_pitch_a:21.571_height:43.142_boundary_treatment:pow_3
block.DLD___num_unit:2_opt_mirror:False_array_counts:[1, 1]_opt_mirror_before_array:[False, False]
----------------------------------------
{'area': 2379009.2636880004,
 'bb': [(-1514.29, -204.397), (1333.094, 631.11)],
 'die area (mm-sq)': 2.3790092636880003,
 'lx': 2847.384,
 'ly': 835.5070000000001}

Output layout:

Layout