24小时热门版块排行榜    

查看: 1311  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

379631818

铁杆木虫 (著名写手)

[交流] 【求助】关于matlab中的函数代换 已有2人参与

有一系列表达式(20个):
f(x)*e^(3*x)+f(x)*e^(5*x)+f(x)*e^(7*x)+……+f(x)*e^(41*x)
同时又知道f(x)*e^(a*x)=f(x+a),
请问如何操作,可以让表达式的和为:f(x+3)+f(x+5)+f(x+7)+……+f(x+41)
谢谢!
其实这里a是任意一个数值,题目的要求是将任意函数f(x)*e^(a*x)批量转化为f(x+a), 函数f(x)是一个比较复杂的式子

[ Last edited by 379631818 on 2010-5-23 at 14:58 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)

Matlab


robert2020(金币+1):鼓励应助。欢迎常来仿真模拟版交流。 2010-05-22 22:39:05
f(x)*e^(3*x)+f(x)*e^(5*x)+f(x)*e^(7*x)+……+f(x)*e^(41*x)
这个表达式当作字符串用正则处理 在经过字符串运算组合成你需要的样子 但是感觉还不如直接输入 不知道你的作用是什么
只是纯粹的弄成那个形式吗? 呵呵
工作了,偶尔会上来~可以关注新浪微博 @云是风的梦_Matlab
3楼2010-05-22 17:03:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

379631818

铁杆木虫 (著名写手)

nono2009:建议通过“引用回复该帖”,以便别人收到你的message. 2010-05-22 18:03:52
感觉subs有可能解决这个问题

换个角度吧,在matlab中如何定义一个函数
令f(x)=sin(x)+cos(x), 用matlab画出f(x)的图形,
那么如何画出f(x-5)的图形

[ Last edited by 379631818 on 2010-5-22 at 17:53 ]
4楼2010-05-22 17:20:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)

Matlab


robert2020(金币+1):楼主的问题似乎还没有解决,鼓励继续解答。 2010-05-22 22:40:48
引用回帖:
Originally posted by 379631818 at 2010-05-22 17:20:34:
感觉subs有可能解决这个问题

换个角度吧,在matlab中如何定义一个函数
令f(x)=sin(x)+cos(x), 用matlab画出f(x)的图形,
那么如何画出f(x-5)的图形

[ Last edited by 379631818 on 2010-5-22 at 17:53 [ ...

好像是不同的问题吧 图形那个简单啊
clc
clear all
x=1:0.1:10;
y1=f(x);
y2=f(x-5);
plot(x,y1,'r+',x,y2,'go')
legend('f(x)','f(x-5)',1);
%%%%%%%%%%%%%%%f.m
function F=f(x)
F=sin(x)+cos(x);      %定义函数关系式




[ Last edited by lijinfeng042 on 2010-5-22 at 18:36 ]
工作了,偶尔会上来~可以关注新浪微博 @云是风的梦_Matlab
5楼2010-05-22 18:35:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

379631818

铁杆木虫 (著名写手)

zzuwangshilei:鼓励进一步讨论自己的话题 2010-05-23 10:08:53
引用回帖:
Originally posted by lijinfeng042 at 2010-05-22 18:35:13:

好像是不同的问题吧 图形那个简单啊
clc
clear all
x=1:0.1:10;
y1=f(x);
y2=f(x-5);
plot(x,y1,'r+',x,y2,'go')
legend('f(x)','f(x-5)',1);
%%%%%%%%%%%%%%%f.m
function F=f(x)
F=sin(x)+cos(x);  ...

还是没有用到函数代换
我的代码:

f=inline('sin(x)+cos(x)');fplot(f,[-10,10],'b');hold on;syms x;fplot(inline(subs(f,x,x-5)),[-10,10],'r');

这里
inline(subs(f,x,x-5))

ans =

     Inline function:
     ans(x) = sin(x-5)+cos(x-5)

我要的正是这种符号结果,而不是数值结果
所以,我的问题还没有解决,希望各位高手帮助!



[ Last edited by 379631818 on 2010-5-23 at 10:54 ]
6楼2010-05-22 19:43:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见