Exemplo n.º 1
0
def instantiate(filename, device, interface_siox, region_ox, region_si,
                contact_ox, contact_si, ox_material, si_material):
    ds.create_gmsh_mesh(mesh=device, file=filename)
    ds.add_gmsh_region(mesh=device,
                       gmsh_name="oxide",
                       region=region_ox,
                       material=ox_material)
    ds.add_gmsh_region(mesh=device,
                       gmsh_name="silicon",
                       region=region_si,
                       material=si_material)
    ds.add_gmsh_contact(mesh=device,
                        gmsh_name="gate",
                        region=region_ox,
                        material="metal",
                        name=contact_ox)
    ds.add_gmsh_contact(mesh=device,
                        gmsh_name="sub",
                        region=region_si,
                        material="metal",
                        name=contact_si)
    ds.add_gmsh_interface(mesh=device,
                          gmsh_name="interface",
                          region0=region_ox,
                          region1=region_si,
                          name=interface_siox)
    ds.finalize_mesh(mesh=device)
    ds.create_device(mesh=device, device=device)
Exemplo n.º 2
0
def CreateNoiseMesh(device, region, material='Si'):
    '''
      Commonly used for the regressions
      device length: 1
      spacing:       0.1
      contacts:      top (x=0), bot (x=1)
    '''
    devsim.create_1d_mesh  (mesh='dog')
    devsim.add_1d_mesh_line(mesh='dog', pos=0, ps=5e-7, tag='top')
    devsim.add_1d_mesh_line(mesh='dog', pos=1e-5, ps=5e-7, tag='bot')
    devsim.add_1d_contact  (mesh='dog', name='top', tag='top', material='metal')
    devsim.add_1d_contact  (mesh='dog', name='bot', tag='bot', material='metal')
    devsim.add_1d_region   (mesh='dog', material=material, region=region, tag1='top', tag2='bot')
    devsim.finalize_mesh   (mesh='dog')
    devsim.create_device   (mesh='dog', device=device)
Exemplo n.º 3
0
def createMesh(device, region):
    devsim.create_2d_mesh(mesh="dog")
    devsim.add_2d_mesh_line(mesh="dog", dir="x", pos=0, ps=1e-6)
    devsim.add_2d_mesh_line(mesh="dog", dir="x", pos=0.5e-5, ps=1e-8)
    devsim.add_2d_mesh_line(mesh="dog", dir="x", pos=1e-5, ps=1e-6)
    devsim.add_2d_mesh_line(mesh="dog", dir="y", pos=0, ps=1e-6)
    devsim.add_2d_mesh_line(mesh="dog", dir="y", pos=1e-5, ps=1e-6)

    devsim.add_2d_mesh_line(mesh="dog", dir="x", pos=-1e-8, ps=1e-8)
    devsim.add_2d_mesh_line(mesh="dog", dir="x", pos=1.001e-5, ps=1e-8)

    devsim.add_2d_region(mesh="dog", material="Si", region=region)
    devsim.add_2d_region(mesh="dog",
                         material="Si",
                         region="air1",
                         xl=-1e-8,
                         xh=0)
    devsim.add_2d_region(mesh="dog",
                         material="Si",
                         region="air2",
                         xl=1.0e-5,
                         xh=1.001e-5)

    devsim.add_2d_contact(mesh="dog",
                          name="top",
                          region=region,
                          yl=0.8e-5,
                          yh=1e-5,
                          xl=0,
                          xh=0,
                          bloat=1e-10,
                          material="metal")
    devsim.add_2d_contact(mesh="dog",
                          name="bot",
                          region=region,
                          xl=1e-5,
                          xh=1e-5,
                          bloat=1e-10,
                          material="metal")

    devsim.finalize_mesh(mesh="dog")
    devsim.create_device(mesh="dog", device=device)