欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

将波函数由坐标空间变换为动量空间

程序员文章站 2022-05-12 22:36:00
Python实现将波函数由坐标空间变换为傅里叶空间import numpy as npimport mathimport scipy as sciimport matplotlib.pyplot as pltl=10N=10000x=np.linspace(-l,l,N)phi1=np.exp(-x**2)#初始波函数phi2=sci.fft(phi1)scipy.fft为离散傅里叶变换,注意的是,直接将原波函数进行fft之后,也要将坐标空间转化为动量空间def x_to_p(x...

Python实现将波函数由坐标空间变换为动量空间

import numpy as np
import math
import scipy as sci
import matplotlib.pyplot as plt
l=10
N=10000
x=np.linspace(-l,l,N)
phi1=np.exp(-x**2)#初始波函数
phi2=sci.fft(phi1)


scipy.fft为离散傅里叶变换,注意的是,直接将原波函数进行fft之后,也要将坐标空间转化为动量空间

def x_to_p(x):   #将坐标空间转化为动量空间与FFT之后的结果对应
    p=np.zeros_like(x)
    for i in range(0,int(N/2)):
        p[i]=math.pi*i/l
        p[i+int(N/2)]=math.pi*(i-N/2)/l
    return(p)
p=x_to_p(x)

这样变换之后的phi2中的元素就与动量空间的坐标相对应

本文地址:https://blog.csdn.net/m0_46296922/article/details/109892087

相关标签: python