Ejemplo n.º 1
0
    def test_laplace(self):

        a = 0 * t + 1
        r1, r2 = inverse_laplace_ratfun(a.expr, s.var, t.var)
        self.assertEqual(r1, delta(t).expr, "inverse_laplace_ratfun")
        self.assertEqual(r2, 0, "inverse_laplace_ratfun")

        a = 1 / (s + 2)
        r1, r2 = inverse_laplace_ratfun(a.expr, s.var, t.var)
        self.assertEqual(r1, 0, "inverse_laplace_ratfun")
        self.assertEqual(r2, exp(-2 * t).expr, "inverse_laplace_ratfun")

        self.assertEqual(Heaviside(t).laplace(), 1 / s, "Heaviside(t)")
        self.assertEqual(DiracDelta(t).laplace(), 1, "DiracDelta(t)")
        self.assertEqual(
            TimeDomainVoltage('x(t)').laplace(), LaplaceDomainVoltage('X(s)'),
            "x(t)")
        self.assertEqual(
            TimeDomainVoltage('5 * x(t)').laplace(),
            LaplaceDomainVoltage('5 * X(s)'), "5 * x(t)")

        v = expr('R0 * exp(-alpha * t) * i(t)')
        V = expr('R0 * I(s + alpha)')

        self.assertEqual(v.laplace(), V, "R0 * exp(-alpha * t) * i(t)")
Ejemplo n.º 2
0
    def test_laplace(self):

        a = 0 * t + 1
        r1, r2 = inverse_laplace_ratfun(a.expr, s.var, t.var)
        self.assertEqual(r1, delta(t), "inverse_laplace_ratfun")
        self.assertEqual(r2, 0, "inverse_laplace_ratfun")        

        a = 1 / (s + 2)
        r1, r2 = inverse_laplace_ratfun(a.expr, s.var, t.var)
        self.assertEqual(r1, 0, "inverse_laplace_ratfun")        
        self.assertEqual(r2, exp(-2 * t).expr, "inverse_laplace_ratfun")

        self.assertEqual(Heaviside(t).laplace(), 1 / s, "Heaviside(t)")
        self.assertEqual(DiracDelta(t).laplace(), 1, "DiracDelta(t)")
        self.assertEqual(Vt('x(t)').laplace(), Vs('X(s)'), "x(t)")
        self.assertEqual(Vt('5 * x(t)').laplace(), Vs('5 * X(s)'), "5 * x(t)")
Ejemplo n.º 3
0
    def test_laplace(self):

        a = 0 * t + 1
        r1, r2 = inverse_laplace_ratfun(a.expr, s.var, t.var)
        self.assertEqual(r1, delta(t), "inverse_laplace_ratfun")
        self.assertEqual(r2, 0, "inverse_laplace_ratfun")

        a = 1 / (s + 2)
        r1, r2 = inverse_laplace_ratfun(a.expr, s.var, t.var)
        self.assertEqual(r1, 0, "inverse_laplace_ratfun")
        self.assertEqual(r2, exp(-2 * t).expr, "inverse_laplace_ratfun")

        self.assertEqual(Heaviside(t).laplace(), 1 / s, "Heaviside(t)")
        self.assertEqual(DiracDelta(t).laplace(), 1, "DiracDelta(t)")
        self.assertEqual(Vt('x(t)').laplace(), Vs('X(s)'), "x(t)")
        self.assertEqual(Vt('5 * x(t)').laplace(), Vs('5 * X(s)'), "5 * x(t)")