Eigenvector And Differential Equations

I stumbled upon an article by Changwei Jun – if my memory serves me correctly – that he recalled many years later when he was in college that all the differential equations he was forced by his middle/high school teachers to memorize mechanically suddenly make full sense for him when he saw the connection between the eigenvector and differential equations.

So I set out to find the connection between the two, hoping I get the cracking moment as he did.

After viewing the playlist – Differential equations, studying the unsolvable – by 3Brown1blue on youtube, I am elated to see what it means and how beautiful it is!

It starts form physical problem of pendulum’s trajectory, which is intuitive and concrete to understand. The mathematician tends to use abstract symbols to help think and hence solve the problem. So in the following diagram, the variable is t, theta is dependent on t, and arc distance x = L*theta.

Because the pendulum is on the end of a string, hence, it can not fly off, we dissect the gravity force to sin(theta) and cos(theta), in this case, only sin(theta) is pushing the point particle at that moment to move ahead.

Now we get the first step.

Visualizing the equation back to pendulum movement.

Now it surfaced out. The matrix symbol indicates a vector, differential equation embedded vector. shown in graphs is all these small arrows:

What’s wonderful is that any system of ordinary differential equation can be expressed by vector field.

Hence we describe this way of thinking, the coordinate system composed of theta, theta prime, or in other word, the variable as x, the first order differentiation of the variable in y, a phase space, or phase flow.

Applying the infinitely differential approach, it’s programmingly feasible to calculate phenomena as long as we condense to above phase space/equations.

The below codes gives a way to calculate the trajectory of pendulum at any time t.

#phase space mathmatical reflection in repetive small steps infinestimal
import numpy as np
#physica constants
g = 9.8
L = 2
mu = 0.1

THETA_0 = np.pi / 3 #60 degrees
THETA_DOT_0 = 0 # no initial angular velocity

#definition of ODE
def get_theta_double_dot(theta, theta_dot):
    return -mu * theta_dot - (g / L) * np.sin(theta)

# Solution to the differential equation
def theta(t):
    #initializing chaning values
    theta = THETA_0
    theta_dot = THETA_DOT_0
    delta_t = 0.01 
    for time in np.arange(0, t, delta_t):
        theta_double_dot = get_theta_double_dot(
                theta, theta_dot
                )
        theta += theta_dot * delta_t
        theta_dot += theta_double_dot * delta_t
    return theta
    
theta(1.0)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.