返回信息流
这是一条镜像帖。来源:北邮人论坛 / matlab / #10671同步于 2014/3/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
跪求大神提供Matlab中的frourier.m文件,邮箱kwilliam1991@qq.c
kwilliam
2014/3/6镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
不知道是不是这个fourier.m
路径 C:\Program Files\MATLAB\R2013a\toolbox\symbolic\symbolic\@sym
文件内容:
function F = fourier(f,varargin)
%FOURIER Fourier integral transform.
% F = FOURIER(f) is the Fourier transform of the sym scalar f
% with default independent variable x. The default return is
% a function of w.
% If f = f(w), then FOURIER returns a function of v: F = F(v).
% By definition, F(w) = int(f(x)*exp(-i*w*x),x,-inf,inf), where
% the integration above proceeds with respect to x (the symbolic
% variable in f as determined by SYMVAR).
%
% F = FOURIER(f,v) makes F a function of the sym v instead of
% the default w:
% FOURIER(f,v) <=> F(v) = int(f(x)*exp(-i*v*x),x,-inf,inf).
%
% FOURIER(f,u,v) makes f a function of u instead of the
% default x. The integration is then with respect to u.
% FOURIER(f,u,v) <=> F(v) = int(f(u)*exp(-i*v*u),u,-inf,inf).
%
% Examples:
% syms t v w x
% fourier(1/t) returns pi*i*(2*heaviside(-w) - 1)
% fourier(exp(-x^2),x,t) returns pi^(1/2)/exp(t^2/4)
% fourier(exp(-t)*sym('heaviside(t)'),v) returns 1/(i*v + 1)
% fourier(diff(sym('F(x)')),x,w) returns i*w*fourier(F(x),x,w)
%
% See also SYM/IFOURIER, SYM/LAPLACE, SYM/ZTRANS, SUBS.
% Copyright 2011 The MathWorks, Inc.
args = privResolveArgs(f, varargin{:});
refs = cellfun(@(x)x.s, args, 'UniformOutput', false);
Fsym = mupadmex('symobj::symtransform','fourier',refs{1},'x','w','v',refs{2:end});
eng = symengine;
F = eng.feval('_index',Fsym,'"TransResult"');
w = eng.feval('_index',Fsym,'"OutVariable"');
if isa(f, 'symfun')
x = eng.feval('_index',Fsym,'"InVariable"');
vars = subs(argnames(f), x, w);
if sum(logical(vars == w)) > 1
error(message('symbolic:sym:fourier:DuplicateParameters'))
end
w = symfun(f, vars);
end;
F = privResolveOutput(F, w);
end
谢大神,我试试【 在 cdllikeny 的大作中提到: 】
: 不知道是不是这个fourier.m
: 路径 C:\Program Files\MATLAB\R2013a\toolbox\symbolic\symbolic\@sym
: 文件内容:
: ...................
其实我猜不是这个,但没有另外的同名文件了,估计它用c写的吧
【 在 kwilliam 的大作中提到: 】
: 谢大神,我试试【 在 cdllikeny 的大作中提到: 】
学长,我想在Matlab求函数的傅里叶变换,买的书上说了frourier的语法,但是用的时候报错,说是没有这个函数,所以我想找frourier.m的文件,或者学长知道Matlab中的傅里叶变换的代码,能发给我下吗?我在网上搜也找不到【 在 cdllikeny 的大作中提到: 】
: 其实我猜不是这个,但没有另外的同名文件了,估计它用c写的吧
:
学长,我就是想仿真文件中第二页的那个ESD的公式,想画出和文件那页中一样的图,调用了你给的代码,但是还是报错,学长能不能给修改下啊。
close all;
clear
alpha=0.714;
t=(-3*alpha:0.0001*alpha:3*alpha);
p=(-1:0.5:1);
set(gca,'Xtick',t,'Ytick',p)
P=-0.5*(sqrt(2)/(alpha))*exp((-2*pi*(t.^2))/(alpha)^2);
subplot(2,2,1);
plot(t,P,'b-')
axis([-3,3,-1,1])
grid on
subplot(2,2,2);
syms t w;
ESD=(abs(fourier(P,w)))^2
%set(gca,'Xtick',w,'Ytick',ESD)
plot(ESD,'b-')
grid on
【 在 cdllikeny 的大作中提到: 】
: 不知道是不是这个fourier.m
: 路径 C:\Program Files\MATLAB\R2013a\toolbox\symbolic\symbolic\@sym
: 文件内容:
: ...................
附件(416.2KB)
大概是他拼错了,应该是fourier,不是frourier
学习的话,可以直接看doc,比如doc fourier回车,或者doc fft回车。内容特别多,基本上,matlab方面不用买书。不过fourier/fft之类的原理、应用都得看书学,matlab只是个计算器
【 在 kwilliam 的大作中提到: 】
: 学长,我想在Matlab求函数的傅里叶变换,买的书上说了frourier的语法,但是用的时候报错,说是没有这个函数,所以我想找frourier.m的文件,或者学长知道Matlab中的傅里叶变换的代码,能发给我下吗?我在网上搜也找不到【 在 cdllikeny 的大作中提到: 】
恩,我昨天已经用书上的一个基于fft编写的函数解决了,谢谢学长了哈。【 在 cdllikeny 的大作中提到: 】
: 大概是他拼错了,应该是fourier,不是frourier
: 学习的话,可以直接看doc,比如doc fourier回车,或者doc fft回车。内容特别多,基本上,matlab方面不用买书。不过fourier/fft之类的原理、应用都得看书学,matlab只是个计算器
:
不谢,没帮上忙
下次问问题可以问的直白一些,直接说明你是需要运行什么程序,结果发现报错没这个命令
而不是直接求这么一个m文件
【 在 kwilliam 的大作中提到: 】
: 恩,我昨天已经用书上的一个基于fft编写的函数解决了,谢谢学长了哈。【 在 cdllikeny 的大作中提到: 】