Circuit Description:
We have a series RLC circuit connected to a DC voltage source V0.
Initial conditions:
s-Domain Circuit Representation
Apply KVL in the t-domain:
v0=vR+vL+vC=Ri(t)+Ldtdi(t)+C1∫i(t)dt Apply KVL in the s-domain:
sV0=RI(s)+LsI(s)+sC1I(s) Factor out 𝐼(𝑠):
sV0=(R+Ls+sC1)I(s) Solve for current 𝐼(𝑠):
I(s)=s(R+Ls+sC1)V0=Ls2+Rs+C1V0 4. Solving for Current in the s-Domain
Let’s define:
Then:
I(s)=as2+bs+cV0 Case Example:
Let’s assume:
Then:
I(s)=s2+2s+410 This is a standard second-order system.
5. Inverse Laplace: Time-Domain Current
Use the known inverse Laplace pairs:
L−1{(s+α)2+ω2ω}=e−α.tsin(ω.t) We complete the square:
s2+2s+4=(s+1)2+3⇒ω=3andα=1 So:
I(s)=(s+1)2+310⇒i(t)=10e−t3sin(3t) 6. Python Simulation Using SymPy
Here’s the full Python code to simulate:
import sympy as sp
import matplotlib.pyplot as plt
import numpy as np
# Symbols
s, t = sp.symbols('s t')
V0 = 10
R = 2
L = 1
C = 0.25
# Define I(s)
Is = V0 / (L*s**2 + R*s + 1/C)
# Inverse Laplace Transform
it = sp.inverse_laplace_transform(Is, s, t)
it_simplified = sp.simplify(it)
print("i(t) =", it_simplified)
# Lambdify for plotting
i_func = sp.lambdify(t, it_simplified, modules=['numpy'])
# Plotting
time_vals = np.linspace(0, 10, 400)
current_vals = i_func(time_vals)
plt.figure(figsize=(10, 5))
plt.plot(time_vals, current_vals, label='i(t)', color='blue')
plt.title("Current Response i(t) in Series RLC Circuit with DC Source")
plt.xlabel("Time (s)")
plt.ylabel("Current (A)")
plt.grid(True)
plt.legend()
plt.show()
Output
Keywords
RLC circuit
, series RLC
, Laplace transform
, s-domain analysis
, DC source
, transient response
, differential equations
, inverse Laplace
, time domain
, second-order system
, underdamped circuit
, damping factor
, electrical engineering
, current response
, step input
, Python simulation
, SymPy
, circuit analysis
, signal processing
, engineering math
, nerd cafe