Example #1
0
            public nld_VCCS(base_device_t owner, string name, nl_fptype ri)
                : base(owner, name)
            {
                m_G  = new param_fp_t(this, "G", nlconst.one());
                m_RI = new param_fp_t(this, "RI", ri);

                m_OP  = new terminal_t(this, "OP", termhandler);   //m_OP(*this, "OP", &m_IP, {&m_ON, &m_IN}, NETLIB_DELEGATE(termhandler));
                m_ON  = new terminal_t(this, "ON", termhandler);   //m_ON(*this, "ON", &m_IP, {&m_OP, &m_IN}, NETLIB_DELEGATE(termhandler));
                m_IP  = new terminal_t(this, "IP", termhandler);   //m_IP(*this, "IP", &m_IN, {&m_OP, &m_ON}, NETLIB_DELEGATE(termhandler));
                m_IN  = new terminal_t(this, "IN", termhandler);   //m_IN(*this, "IN", &m_IP, {&m_OP, &m_ON}, NETLIB_DELEGATE(termhandler));
                m_OP1 = new terminal_t(this, "_OP1", termhandler); //, m_OP1(*this, "_OP1", &m_IN, NETLIB_DELEGATE(termhandler))
                m_ON1 = new terminal_t(this, "_ON1", termhandler); //, m_ON1(*this, "_ON1", &m_IN, NETLIB_DELEGATE(termhandler))
                m_OP.terminal_t_after_ctor(m_IP, new std.array <terminal_t, u64_const_2>(m_ON, m_IN));
                m_ON.terminal_t_after_ctor(m_IP, new std.array <terminal_t, u64_const_2>(m_OP, m_IN));
                m_IP.terminal_t_after_ctor(m_IN, new std.array <terminal_t, u64_const_2>(m_OP, m_ON));
                m_IN.terminal_t_after_ctor(m_IP, new std.array <terminal_t, u64_const_2>(m_OP, m_ON));
                m_OP1.terminal_t_after_ctor(m_IN);
                m_ON1.terminal_t_after_ctor(m_IN);

                ////, m_IPx(*this, "_IPx", &m_OP, NETLIB_DELEGATE(termhandler))   // <= this should be NULL and terminal be filtered out prior to solving...
                ////, m_INx(*this, "_INx", &m_ON, NETLIB_DELEGATE(termhandler))   // <= this should be NULL and terminal be filtered out prior to solving...

                m_gfac = nlconst.one();


                connect(m_OP, m_OP1);
                connect(m_ON, m_ON1);
                ////connect(m_IP, m_IPx);
                ////connect(m_IN, m_INx);
            }
Example #2
0
            //NETLIB_CONSTRUCTOR_DERIVED(VCVS, VCCS)
            public nld_VCVS(base_device_t owner, string name)
                : base(owner, name)
            {
                m_RO = new param_fp_t(this, "RO", nlconst.one());

                m_OP2 = new terminal_t(this, "_OP2", termhandler); //, &m_ON2, NETLIB_DELEGATE(termhandler))
                m_ON2 = new terminal_t(this, "_ON2", termhandler); //, &m_OP2, NETLIB_DELEGATE(termhandler))
                m_OP2.terminal_t_after_ctor(m_ON2);
                m_ON2.terminal_t_after_ctor(m_OP2);


                connect(m_OP2, m_OP1);
                connect(m_ON2, m_ON1);
            }
Example #3
0
 //NETLIB_CONSTRUCTOR_EX(VCCS, nl_fptype ri = nlconst::magic(1e9))
 public nld_VCCS(base_device_t owner, string name) : this(owner, name, nlconst.magic(1e9))
 {
 }