project = desktop.new_project() project.make_active() if simtype == "DrivenTerminal": design = project.new_dt_design("test") if simtype == "DrivenModal": design = project.new_dm_design("test") setup_name = "Setup" modeler = "hfss" pm = Modeler(modeler) pm.is_litho = False pm.is_hfss = True chip_body = Body(pm, "chip") # #############################################################Drawing track = pm.set_variable("0.32mm") sub_h = pm.set_variable("0.43mm") cover_H = pm.set_variable("0.57mm") MSL_length = pm.set_variable("1mm") width = pm.set_variable("3mm") # define substrate + MSL + GND chip_subs = chip_body.box([-width / 2, 0, -sub_h], [width, MSL_length, sub_h], name="chip_subs") chip_subs.assign_material("sapphire") MSL = chip_body.rect([-track / 2, 0, 0], [track, MSL_length, 0], name="MSL")
import os import HFSSdrawpy.libraries.example_elements as elt from HFSSdrawpy import Body, Modeler from HFSSdrawpy.parameters import GAP, TRACK # import HFSSdrawpy.libraries.base_elements as base pm = Modeler("gds") relative = pm.set_variable("1mm") chip1 = Body(pm, "chip1", rel_coor=[[0, 0, relative], [1, 0, 0], [0, 1, 0]]) chip2 = Body(pm, "chip2", rel_coor=[[0, 0, relative], [0, 1, 0], [-1, 0, 0]]) chip3 = Body(pm, "chip3", rel_coor=[[0, relative, 0], [1, 0, 0], [0, 1, 0]], ref_name="chip2") track = pm.set_variable("20um") gap = pm.set_variable("10um", name="gap") track_big = pm.set_variable("25um") gap_big = pm.set_variable("15um") track_middle = pm.set_variable("22.5um") gap_middle = pm.set_variable("12.5um") offset = pm.set_variable("-50um") # chip2
Created on Tue Oct 29 14:05:00 2019 @author: wcs """ import os from HFSSdrawpy import Modeler, Body from HFSSdrawpy.parameters import TRACK, GAP import HFSSdrawpy.libraries.example_elements as elt # import HFSSdrawpy.libraries.base_elements as base pm = Modeler('hfss') relative = pm.set_variable('1mm') main = Body(pm, 'main', rel_coor=[[0, 0, 0], [1, 0, 0], [0, 1, 0]]) chip = Body(pm, 'chip', rel_coor=[['1mm', '1mm', '1mm'], [1, 0, 0], [0, 0, 1]], ref_name='main') chip1 = Body(pm, 'chip1', rel_coor=[[0, 0, 0], [0, 1, 0], [1, 0, 0]], ref_name='chip') chip2 = Body(pm, 'chip2', rel_coor=[[0, 0, 0], [1, 0, 0], [0, 0, 1]], ref_name='chip')
Created on Tue Oct 29 14:05:00 2019 @author: wcs """ import os from HFSSdrawpy import Modeler, Body from HFSSdrawpy.parameters import TRACK, GAP import HFSSdrawpy.libraries.example_elements as elt # import HFSSdrawpy.libraries.base_elements as base pm = Modeler('gds') relative = pm.set_variable('1mm') chip1 = Body(pm, 'chip1', rel_coor=[[0, 0, relative], [1, 0, 0], [0, 1, 0]]) chip2 = Body(pm, 'chip2', rel_coor=[[0, 0, relative], [0, 1, 0], [-1, 0, 0]]) chip3 = Body(pm, 'chip3', rel_coor=[[0, relative, 0], [1, 0, 0], [0, 1, 0]], ref_name='chip2') track = pm.set_variable('20um') gap = pm.set_variable('10um', name='gap') track_big = pm.set_variable('25um') gap_big = pm.set_variable('15um') track_middle = pm.set_variable('22.5um') gap_middle = pm.set_variable('12.5um')
import os import HFSSdrawpy.libraries.example_elements as elt from HFSSdrawpy import Body, Modeler from HFSSdrawpy.parameters import GAP, TRACK # import HFSSdrawpy.libraries.base_elements as base pm = Modeler("hfss") relative = pm.set_variable("1mm") main = Body(pm, "main") chip = Body(pm, "chip", rel_coor=[["1mm", "1mm", "1mm"], [1, 0, 0], [0, 0, 1]], ref_name="main") chip1 = Body(pm, "chip1", rel_coor=[[0, 0, 0], [0, 1, 0], [1, 0, 0]], ref_name="chip") chip2 = Body(pm, "chip2", rel_coor=[[0, 0, 0], [1, 0, 0], [0, 0, 1]], ref_name="chip") track = pm.set_variable("20um") gap = pm.set_variable("10um", name="gap")
# -*- coding: utf-8 -*- """ Created on Tue Oct 29 14:05:00 2019 @author: wcs """ import os from HFSSdrawpy import Modeler, Body from HFSSdrawpy.parameters import TRACK, GAP import HFSSdrawpy.libraries.example_elements as elt # import HFSSdrawpy.libraries.base_elements as base pm = Modeler('hfss') chip1 = Body(pm, 'chip1') track = pm.set_variable('20um') gap = pm.set_variable('10um') radius1 = pm.set_variable('100um') radius2 = pm.set_variable('400um') rect1 = chip1.rect([0, 0], ['1mm', '1mm'], layer=TRACK) rect2 = chip1.rect(['0.5mm', '0.5mm'], ['-1mm', '-1mm'], layer=GAP) rect1.unite(rect2) rect1.fillet([radius1, radius2], [[3, 1, 2, -1, -2, -3], [0, 4]]) # convention for fillet :
# -*- coding: utf-8 -*- """ Created on Tue Oct 29 14:05:00 2019 @author: wcs """ import os from HFSSdrawpy import Modeler, Body from HFSSdrawpy.parameters import TRACK, GAP import HFSSdrawpy.libraries.example_elements as elt # import HFSSdrawpy.libraries.base_elements as base pm = Modeler('hfss') relative = pm.set_variable('1mm') chip = Body(pm, 'chip', rel_coor=[[0, 0, 0], [1, 0, 0], [0, 1, 0]]) chip1 = Body(pm, 'chip1', rel_coor=[['1mm', 0, 0], [1, 0, 0], [0, 1, 0]]) chip2 = Body(pm, 'chip2', rel_coor=[['1mm', 0, 0], [ 1, 0, 0], [0, 1, 0]], ref_name="chip1")
import os import HFSSdrawpy.libraries.example_elements as elt from HFSSdrawpy import Body, Modeler from HFSSdrawpy.parameters import GAP, TRACK # import HFSSdrawpy.libraries.base_elements as base pm = Modeler("hfss") chip1 = Body(pm, "chip1") track = pm.set_variable("20um") gap = pm.set_variable("10um") radius1 = pm.set_variable("100um") radius2 = pm.set_variable("400um") rect1 = chip1.rect([0, 0], ["1mm", "1mm"], layer=TRACK) rect2 = chip1.rect(["0.5mm", "0.5mm"], ["-1mm", "-1mm"], layer=GAP) rect1.unite(rect2) rect1.fillet([radius1, radius2], [[3, 1, 2, -1, -2, -3], [0, 4]]) # convention for fillet : # if the geometry is a genuine base element, fillet indices are order in the # natural way : # - order or points for a polyline # - origin then 'x' dimension point etc for a rectangle # If the polygon result from a boolean operation, the fillets are order
import os import HFSSdrawpy.libraries.example_elements as elt from HFSSdrawpy import Body, Modeler from HFSSdrawpy.parameters import GAP, TRACK # import HFSSdrawpy.libraries.base_elements as base pm = Modeler("hfss") relative = pm.set_variable("1mm") chip = Body(pm, "chip", rel_coor=[[0, 0, 0], [1, 0, 0], [0, 1, 0]]) chip1 = Body(pm, "chip1", rel_coor=[["1mm", 0, 0], [1, 0, 0], [0, 1, 0]]) chip2 = Body(pm, "chip2", rel_coor=[["1mm", 0, 0], [1, 0, 0], [0, 1, 0]], ref_name="chip1")