Commit eabf85ef authored by Mario's avatar Mario
Browse files

extending the technology for MOS scaling

parent bd6f659a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -106,6 +106,7 @@ class DutCircuit(DutView):
        # save for later use
        self._inp_circuit = None
        self._modelcard = None
        self.scale_modelcard()
        self.inp_header = input_circuit

    @property
@@ -305,4 +306,5 @@ class DutCircuit(DutView):
                self.width,
                self.nfinger,
                self.contact_config,
                dut=self,
            )
+3 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ UNIT_PREFIX_MIX = {
}
UNIT_PREFIX_DENOMINATOR = {
    1e-6: r"\centi",
    1: "",
}


@@ -566,6 +567,7 @@ class _specifiers(GlobalObj, metaclass=Singleton):
    Y = SpecifierStr("y")
    Z = SpecifierStr("z")
    ENERGY = SpecifierStr("E")
    NOISE = SpecifierStr("N")

    # only derived quantities here
    DC_CURRENT_AMPLIFICATION = SpecifierStr("BETA")
@@ -1065,4 +1067,5 @@ natural_scales = {
    specifiers.ENERGY: 1,  # eV
    specifiers.UNILATERAL_GAIN: 1,
    specifiers.NET_DOPING: 1e-6,  # 1/cm^3
    specifiers.NOISE: 1,
}
+3 −1
Original line number Diff line number Diff line
@@ -187,7 +187,7 @@ class Technology(object):
        raise NotImplementedError

    def scale_modelcard(
        self, mcard, lE0, bE0, nfinger, config, lE_drawn_ref=None, bE_drawn_ref=None
        self, mcard, lE0, bE0, nfinger, config, dut=None, lE_drawn_ref=None, bE_drawn_ref=None
    ):
        """This method scales a already finished modelcard (no sheet resistances).

@@ -203,5 +203,7 @@ class Technology(object):
            Number of emitter fingers.
        config : str
            A unique identifier for the configuration.
        dut : :class:`~DMT.core.DutView`
            DutView to scale for.
        """
        raise NotImplementedError
+1 −1
Original line number Diff line number Diff line
@@ -76,7 +76,7 @@ def recursive_copy(src, dst, force=False):
            item_dst.mkdir(exist_ok=True)
            recursive_copy(item_src, item_dst)
        else:
            raise ValueError("DMT->recursive_copy: I do not know this filettype.")
            raise ValueError("DMT->recursive_copy: I do not know this filetype.")


def rmtree(root):