matlab中fft与fftshift,在matlab中使用fft,ifft和fftshift
我试图实现
split-step fourier方法来解决光学中的非线性薛定谔方程.它主要分别处理线性部分和非线性部分.它通过傅立叶变换和时域中的非线性部分来求解线性部分.
从书中复制以下代码:
alpha = 0
beta_2 = 1
gamma = 1
T = linspace(-5,5,2^13);
delta_T = T(2)-T(1);
L = max(size(A));
delta_omega = 1/L/delta_T*2*pi;
omega = (-L/2:1:L/2-1)*delta_omega;
A = 2*sech(T);
A_t = A;
step_num = 1000;
h = 0.5*pi/step_num;
results = zeros(L,step_num);
A_f = fftshift(fft(A_t));
for n=1:step_num
A_f = A_f.*exp(-alpha*(h/2)-1i*beta_2/2*omega.^2*(h/2));
A_t = ifft(A_f);
A_t = A_t.*exp(1i*gamma*(abs(A_t).^2*h));
A_f = fft(A_t);
A_f = A_f.*exp(-alpha*(h/2)-1i*beta_2/2*omega.^2*(h/2));
A_t = ifft(A_f);
results(:,n) = abs(A_t);
end
其中A_t是脉冲(要求解的函数).我不明白的是,在一开始它使用fftshift将零频率移动到中心,但是后来在循环中它没有ffthift.我尝试将fftshift添加到主循环中,或者在开始时将其删除.两者都给出了错误的结果,为什么呢?一般来说,我什么时候应该使用fftshift和ifftshift,特别是当我试图像这种情况那样解决微分方程时?
谢谢
matlab中fft与fftshift,在matlab中使用fft,ifft和fftshift相关推荐
- Matlab中N是什么意思,MATLAB中y=FFT(X,N)中的N是什么意思
matlab傅里叶变换中fft(x,n),x,n分别是什么含义? fft(x,n)是一维快速傅里叶变换,x相当于信号,n是变换点数.离散傅里叶变换DFT的快速算法就是FFT. matlab中FFT函数 ...
- matlab计算一组数的函数值_matlab中怎么求一组数据概率最大的数
好象直接使用就可以了,第一次出现就包含了定义 顺便把些命令弄给你看下 matlab命令 matlab commands and functions list A a abs 绝对值.模.字符的ASCI ...
- 学习通信原理之——从实验中理解频谱/功率谱/功率谱密度(MATLAB演示)
我的个人博客文章链接如下:学习通信原理之--从实验中理解频谱/功率谱/功率谱密度(MATLAB演示) 前言 最近在复习通信原理,每次到了功率谱这一块就感到困惑,每次都要去查,我觉得不能再这样循环下去了 ...
- matlab离散方波信号,MATLAB - 在ODE15s函数中生成方波信号?(MATLAB - Generate square signal in ODE15s function?)...
MATLAB - 在ODE15s函数中生成方波信号?(MATLAB - Generate square signal in ODE15s function?) 我试图从函数内部生成一个方形信号,通过O ...
- matlab振动信号数据,Matlab在场地微振动信号数据处理中的应用
1前言地微振动信号是在场地利用高灵敏度仪器观测到的一种随时间变化的微弱随机振动.它包涵着丰富的地球物理信息.但是,场地微振动对外界干扰极为敏感,如车辆通行.施工振动.人员走动甚至天气变化等.另一方面, ...
- matlab对遥感影像投影转换,在matlab中实现遥感影像和shp文件的结合显示
clc;close all;clear; road=shaperead('boston_roads.shp'); %读取shape文件 figure, mapshow('boston.tif'); % ...
- 用matlab画多普勒加宽线性函数,MTD雷达中多普勒滤波器组的设计与实现
合肥工业大学理学院电子科学与技术2006届毕业论文集 目 录 中文摘要1 英文摘要2 1 引言3 1.1 研究背景及意义3 1.2 国内外研究现状4 1.3 本设计的指导思想和主要工作4 2 动目标检 ...
- matlab 求虚数相位角,在matlab中怎么计算其相位
本文收集整理关于在matlab中怎么计算其相位的相关议题,使用内容导航快速到达. 内容导航: Q1:相位超前补偿器在matlab中是什么模块 首先介绍一下函数,angle()是求相位角,angle() ...
- matlab做互相关分析,自相关与互相关在matlab中实现_互相关在matlab中实现
1. 首先说说自相关和互相关的概念. 这个是信号分析里的概念,他们分别表示的是两个时间序列之间和同一个时间序列在任意两个不同时刻的取值之间的相关程度,即互相关函数是描述随机信号x(t),y(t)在任意 ...
- matlab中的timer模块,[转载]Matlab中Timer的使用
Matlab中Timer的使用 鉴于Matlab中缺乏多线程机制,使用Timer无疑是一个很重要的工具,Matlab中Timer是一个Java对象. (1)Timer 的定义 t=timer(); 设 ...
最新文章
- scrapy模拟用户登录
- ThinkPHP判断更新是否成功的正确方法
- Windows环境下的NodeJS+NPM+Bower安装配置
- ML之Medicine:利用机器学习研发药物—《Machine Learning for Pharmaceutical Discovery and Synthesis Consortium》
- python 网络设备管理软件_一个查看网络设备信息Python小程序
- 库卡机器人是s7编程_「西门子1200PLC教程」19.S7-1200入门实例
- [渝粤教育] 西南科技大学 货币银行学 在线考试复习资料(1)
- android自动回复退订,Android实现短信自动回复,挂电话
- 给大学生的几条良心建议
- 时钟服务器地址_时钟同步 Chrony 教程
- 易语言中关于成员变量的声明
- 2019 年被“杀”死的那些技术!
- 好企业:不是走得多快而是走得多稳
- getHibernateTemplate()为NUll
- Spring boot 开发组件
- 20221103使用ffmpeg提取mp4视频的字幕
- 全新ThihkPHP聚合支付系统源码+兼容全部易支付
- 深入OpenJDK源码全面理解Java类加载器(下 -- Java源码篇)
- JEECG集成flowable
- Google 搜索语法
热门文章
- 全国31省份实体经济发展水平数据 (2004-2017年)
- 芒果TV广告投放的展现样式!芒果TV广告投放如何收费?
- [转转转]面试常见逻辑推理题目及答案整理
- 某企业信息安全体系整体建设方案规划方案毕业设计毕业答辩
- 在线直播系统源码,进入新的界面后自动刷新内容
- c语言算术转换例子,关于C语言算术表达式中“寻常算术转换”的问题
- 从零开始学习使用FPGA控制ADF4351芯片
- DirectX修复工具 4.0 标准版
- 贼心不死安cuda记录-双显卡笔记本Ubuntu安装cuda9.0
- 使用Photoshop制作名片