User-defined pillars profile
import numpy as np
from mnflow.mfda.cad.dld.theme.block import DLD
The profile shape of pillars can be defined from the coordinates of vertices with bounding box centered on (0, 0):
shape = np.array([
(0.34, 0.),
(0.5, 0.25),
(0.17, 0.25),
(0., 0.5),
(-0.17, 0.25),
(-0.5, 0.25),
(-0.34, 0.),
(-0.5, -0.25),
(-0.17, -0.25),
(0., -0.5),
(0.17, -0.25),
(0.5, -0.25),
])
dld = DLD(
d_c=1.,
Np=10,
Nw=8,
core_shape=shape,
num_unit=2,
rotation_angle_deg_before_array=90,
# constraints OFF
turn_off_constraints=True,
# image
opt_save_image=True,
img_dpu=20,
)
----------------------------------------
core.DLD___Np:10_Nw:8_gap_w:2.157_pitch_w:4.314_gap_a:2.157_pitch_a:4.314_height:8.628_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': 4005.0444279999997,
'bb': [(-84.127, -11.355), (2.157, 35.062)],
'count of 1D arrays of core.DLD': 1,
'd_c': 1.0,
'lx': 86.28399999999999,
'ly': 46.417,
'performance': {'Flow rate @ 1 bar/area (micro-liter/min/mm-sq)': 1432.772652107327,
'die area (mm-sq)': 0.004005044427999999,
'gap over crit. dia.': 2.157108371715726,
'volumetric flow rate at 1 bar (micro-liter/min)': 5.7383181269132315},
'resistance (Pa.sec/m^3)': 1045602538461480.0,
'volumetric flow rate at 1 bar (m^3/sec)': 9.563863544855386e-11,
'volumetric flow rate at 1 bar (milli-liter/hr)': 0.3442990876147939}
Output layout:
