massia003 发表于 2008-5-1 22:12

请教函数或数组的反射函数或反射数组怎么求

用chirplet变换作时频分析时,基于fft变换对其进行改进,要求求一个函数(数组)f(t)的反射函数(数组),具体该怎么实现?其中t为离散时间点

sogooda 发表于 2008-5-2 17:05

离散序列的反函数还真是一个问题,但是对于符号函数matlab有比较直接的方式求解。下面的内容google而来,可供参考。

1。g=finverse(f):返回符号函数f的反函数g。其中,f是一个符号函数表达式,其变量为x。求得的反函数g是一个满足g(f(x))=x的符号函数。
>> syms x;
>> f=sym(2/sin(x));
>> finverse(f)
ans =
asin(2/x)
2。g=finverse(f,v):返回自变量v的符号函数f的反函数。求得的反函数g是一个满足g(f(v))=v的符号函数。当f包含不止一个符号变量时,往往调用这个格式。
当finverse求得的解不惟一时,matlab会给出警告。
>> syms x;
>> f=sym(x^2+1);
>> finverse(f)
Warning: finverse(x^2+1) is not unique.
> In C:\MATLAB6p5\toolbox\symbolic\@sym\finverse.m at line 43
ans =
(-1+x)^(1/2)

sogooda 发表于 2008-5-2 18:05

刚才想了一下,其实这个问题很简单,因为函数f和它的反函数上的点是关于y=x对称的,这样就简单了。
编写了下面的一个程序,求离散函数的反函数,与各位分享,欢迎多提宝贵意见。function invf=dfinverse(f)
%DFINVERSE(f)
%Discrete functional inverse.
%returns the functional inverse of f.
%
% Exampe:
% x=linspace(0,10);
% y=x.^0.6;
% f1=;
% plot(f1(:,1),f1(:,2));
% hold on
% f2=dfinverse(f1);
% plot(f2(:,1),f2(:,2),'r--')
%
% See also finverse
%
% Author: Zhang Fujian.
% email: zhangfujijan@gmail.com
% version 1.0 May. 2nd, 2008
invf(:,1)=f(:,2);
invf(:,2)=f(:,1);

[ 本帖最后由 sogooda 于 2008-5-2 18:06 编辑 ]

massia003 发表于 2008-5-2 19:18

反函数就是反射函数吗?

反射函数就是求函数或(数组)的反函数吗?
我查了很多资料,没有发现有反射函数的定义啊

sogooda 发表于 2008-5-2 22:57

回复 4楼 的帖子

反正我是这么认为的,呵呵
页: [1]
查看完整版本: 请教函数或数组的反射函数或反射数组怎么求