本帖最后由 多多会迈特来布 于 2016-2-11 05:59 编辑

我现在是需要用水力学的一个叫做Mansard&Funike的方法来做波浪反射分析,就是通过得到的三个位置随时间变化的水面高度数据,用MATLAB程序,过程中用到傅里叶变换之后,求得随频率分布的密度图像。

我使用的是MATLAB R2010b  操作系统 64位 Win7

我得到的最后密度分布图像是这样的

然而另外一个软件得到的图像是

pastedImage.png (59.04 KB, 下载次数: 3)

2016-2-11 05:26 上传

这两张图是在相同的数据条件下得到的,而第二章的图应该是对的。就是中间一个频率的图很高,然后两边低。但是由于那个软件在学术上来说已经过期了, 所以我导师要求我在matlab里面吧这个程序弄通。

以下是我有疑问的程序部分

N=2^14; %Number of Records

L=2^14; %Transform Length

SmoothingK=2^0;

%Define all the required Mansard & Fuke variables

fd=zeros(L,1); %Frequency division matrix

%Sampling Frequency

Fs=(N-1)/(Times(N,1)-Times(1,1));

%Find the resolution from the sampling frequency

f=Fs/L;

%Auto spectal density for each probe

SP1=pwelch(P1,(L/SmoothingK),[],L)/(Fs/12.566);

SP2=pwelch(P2,(L/SmoothingK),[],L)/(Fs/12.566);

SP3=pwelch(P3,(L/SmoothingK),[],L)/(Fs/12.566);

%Find amplitude spectra

AP1=zeros(L,1);

AP2=zeros(L,1);

AP3=zeros(L,1);

for i = 1:(L/2)

AP1(i,1)=sqrt((SP1(i,1)*f));

AP2(i,1)=sqrt((SP2(i,1)*f));

AP3(i,1)=sqrt((SP3(i,1)*f));

end

%Generate cross spectral densities

CSD12=cpsd(P1,P2,(L/SmoothingK),[],L);

CSD13=cpsd(P1,P3,(L/SmoothingK),[],L);

PH11=zeros(L,1);

PH12=zeros(L,1);

PH13=zeros(L,1);复制代码

可不可以请大神帮我看看有没有什么问题 为什么会出现和第二章图片差距这么大的第一张图片。由于我是MATLAB初学者, 对于傅里叶变换也只是看过网络上的扫盲,不知道错误在哪儿啊?  另外由于程序不是我写的,我是拿到这个程序然后将它修改然后让他能运行处正确结果。其中我对于pwelch后面Fs/12.566 这个部分不是很理解。  Fs是采样频率

程序中的AP1,AP2,AP3就是这张图

QQ截图20160211060145.png (43.12 KB, 下载次数: 6)

2016-2-11 05:59 上传

中公式中的Ap,k,是频率k/T对应的傅里叶参数。

以下是我的MATLAB软件和一篇讲述这个软件用的算法的论文,比较重要的内容我在文中用高亮标出来了。论文和完整程序我都附件在了帖子里,由于数据文件太大了,所以就没有上传,如果需要我也可以提供

谢谢各位大神了

我的QQ292031713  如果有思路也可以加我细聊 谢谢啦! 最近好急这个

我根据讲述这个程序用的Mansard&Funke的方法的文章里面写的计算方法检查过,后面的步骤基本都是正确的,比较可能出现问题的部分就是我写在上方的程序部分。

MATLAB 傅里叶普和相角,傅里叶变换在MATLAB中傅里叶系数相位角计算pwelch和cspd使用...相关推荐

  1. matlab 二重傅里叶积分,傅里叶积分、傅里叶变换的matlab实现.doc

    傅里叶积分.傅里叶变换的matlab实现.doc PAGE PAGE 1 院 校: 物理与电子科学学院 班 级: 0801 班 姓 名: 目 录 1. 引言---------------------- ...

  2. opencv:傅里叶变换中的相位的计算

    #include <opencv2/core.hpp> #include <opencv2/imgcodecs.hpp> #include <opencv2/highgu ...

  3. 一文教你理解傅里叶变换及MATLAB在求傅里叶变换中的应用

    大纲 从积分变换谈起 积分变换的基本概念 积分变换的来源 傅里叶级数 傅里叶级数的相关基础概念 傅里叶级数的基石--三角函数系及其正交性 三角函数系 三角函数系的正交性 傅里叶级数的含义 傅里叶系数的 ...

  4. [MATLAB学习笔记]采用快速傅里叶变换求时间序列的周期项

    [MATLAB学习笔记]采用快速傅里叶变换求时间序列的周期项 1. 背景 现有长度为11年的5个时间序列,为某拟研究对象的5个参数.现计划先通过快速傅里叶变换求每个系数序列的显著周期项,再分别按照傅里 ...

  5. 傅里叶变换的Matlab代码

    原文:http://blog.csdn.net/xiaofengsheng/article/details/5991680 傅里叶变换的Matlab代码: img=imread('e:/4.jpg') ...

  6. c# 傅里叶变换 频域_傅里叶变换在MATLAB中的应用(频域滤波)

    点击上方蓝字  关注我们 本文主要讲述如何在MATLAB中实现频域滤波,那么,怎么实现呢,我们这里讲的所有的滤波都是通过傅里叶变换在频域中实现的,所有这部分和傅里叶变换渊源很深,至于傅里叶变换本身,我 ...

  7. 离散傅里叶变换及matlab实现(按时间抽选(DIT)的基-2 FFT算法(库利-图基算法))

    转,傅里叶变换,很好的解释 很好的文章,可惜水平太差,还没有完全理解. 快速傅里叶的matlab实现 按时间抽选(DIT)的基-2 FFT算法(库利-图基算法) 傅里叶要用到的nn个复数,不是随机找的 ...

  8. matlab傅里叶变换矩阵

    matlab傅里叶变换矩阵 a=(0:15)'*(0:15); W=exp(-2*pi*1i*a/16)/sqrt(16);

  9. 分步傅里叶算法_分布傅里叶算法求解非线性薛定谔的matlab程序问题

    [size=14.399999618530273px]分布傅里叶算法求解非线性薛定谔的matlab程序里,我注释的可能也有错误,请指导@alpha=0;  %光纤损耗值,单位dB/km alph=al ...

最新文章

  1. Jeff Dean| 面向系统的机器学习和面向机器学习的系统
  2. js for循环 ajax
  3. PHP-redis中文文档
  4. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题
  5. pg 事务 存储过程_PgpoolII实现数据分区存储及性能分析
  6. beginnersbook C 语言教程·翻译完成 | ApacheCN
  7. matlab 安装(2018a图解版)
  8. 笨办法学python在线阅读_『笨办法』学Python 3
  9. java程序员基础算法_java基础算法
  10. java插件不启动_java-插件安装后Eclipse启动问题
  11. python加载dll后如何查看函数_Python调用DLL带指针函数读写IC卡
  12. Java开发人员2021年的职位描述和职责
  13. web期末大作业:基于html+css+js制作 学校班级网页制作
  14. js去除字符串中的空白字符(也可以去除其他字符串)
  15. oracle 里面加条件判断,oracle 查询的时候加条件判断
  16. 服务器系统做个备份吗,服务器操作系统能做备份吗
  17. PS钢笔抠图及商业案例
  18. 量化进阶——如何突破期货交易难点
  19. Windows环境QtCharts安装配置说明(qt5.12.2+qtCharts5.12)
  20. Pytorch——XLNet 预训练模型及命名实体识别

热门文章

  1. android 丢帧率测试,Android流畅度测试
  2. 利用wireshark和fiddler破解中控人脸识别考勤机
  3. 02.控制反转(IoC)
  4. 贾斯汀比伯和金卡戴珊嘛关系?
  5. 爱慕股份5月31日登陆上交所;阿斯利康中国北部总部正式启用;中联重科塔机智能工厂全线投产 | 美通企业周刊...
  6. 全开源java电商小程序saas项目介绍
  7. 2021年GitHub上那些优秀Android开源库总结,附大厂真题面经
  8. 你不是世界首富贝佐斯的兄弟
  9. C++辗转相除法详解
  10. 四川高安版华为6110T刷机固件_ca_sccdx免费系统线刷包及教程