| 查看: 500 | 回复: 4 | |||
| 当前主题已经存档。 | |||
zhanghcui木虫 (小有名气)
|
[交流]
【求助】 matlab 符号转化double
|
||
|
各位高人, 怎样把符号表达式转变为double表达式 下面是我的主程序和出错提示: syms x y z1 z2 m=3 n=3 h=0.0003; w=0.0005; a=0.0001 e=h/w %z1=@pp ff=sym(zeros(m,n)) for i=1:m %feval(z1,x,y,i) z1=x.^i+y.^i for j=1:n % z2=@pp %feval(z2,x,y,j) z2=x.^j+y.^j z1x=diff(z1,x) z2x=diff(z2,x) z1y=diff(z1,y) z2y=diff(z2,y) ff(i,j)=e^2*z1x*z2x+z1y*z2y ff(i,j)=char(ff(i,j)) ff(i,j)=strrep(ff(i,j),'*','.*') ff(i,j)=strrep(ff(i,j),'/','./') ff(i,j)=strrep(ff(i,j),'\','.\') ff(i,j)=strrep(ff(i,j),'^','.^') ss=intout(ff(i,j),0,1,0,1) end end 出错: Warning: Inputs must be character arrays or cell arrays of strings. > In zzz at 23 ??? Error using ==> strrep Conversion to double from sym is not possible. Error in ==> zzz at 23 ff(i,j)=strrep(ff(i,j),'*','.*') [ Last edited by luoqiquan on 2009-12-19 at 18:14 ] |
» 猜你喜欢
求2026年在台湾举行的物理和材料领域国际学术会议信息
已经有0人回复
求国际会议网站
已经有1人回复
物理学I论文润色/翻译怎么收费?
已经有116人回复
求取一些关于纳米材料和纳米技术相关的英文PPT。
已经有0人回复
【复旦大学】二维材料方向招收2026年博士研究生1名
已经有0人回复
北京纳米能源与系统研究所 王中林院士/曹南颖研究员课题组2026级硕/博/博后招生
已经有10人回复
荷兰Utrecht University超快太赫兹光谱王海教授课题招收2026 CSC博士生
已经有19人回复
反铁磁体中的磁性切换:两种不同的机制已成功可视化
已经有0人回复
26申博推荐:南京航空航天大学国际前沿院光学方向招收博士生!
已经有0人回复
求标准粉末衍射卡号 ICDD 01-076-1802
已经有0人回复
mingdong
荣誉版主 (知名作家)
- 应助: 0 (幼儿园)
- 贵宾: 4.548
- 金币: 42102.8
- 散金: 72
- 红花: 8
- 帖子: 5922
- 在线: 456.4小时
- 虫号: 633286
- 注册: 2008-10-22
- 性别: GG
- 专业: 能源化工
- 管辖: 计算模拟
★
xuefei06(金币+1,VIP+0):感谢参与并提意见
xuefei06(金币+1,VIP+0):感谢参与并提意见
|
你好 数值仿真版开有matlab专贴,请参考: http://muchong.com/bbs/viewthread.php?tid=759829&fpage=1 |

2楼2008-12-04 16:50:56
zhanghcui
木虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 2116.1
- 散金: 140
- 红花: 2
- 帖子: 208
- 在线: 229.4小时
- 虫号: 659790
- 注册: 2008-11-22
- 专业: 传递过程
3楼2008-12-05 13:06:56
★ ★ ★ ★ ★
mingdong(金币+2,VIP+0):感谢您的帮助!
xuefei06(金币+3,VIP+0):感谢你给出这么详细的答案,希望对楼主有所帮助
mingdong(金币+2,VIP+0):感谢您的帮助!
xuefei06(金币+3,VIP+0):感谢你给出这么详细的答案,希望对楼主有所帮助
|
syms x y z1 z2 m=3 n=3 h=0.0003; w=0.0005; a=0.0001 e=h/w %z1=@pp ff=sym(zeros(m,n)) for i=1:m %feval(z1,x,y,i) z1=x.^i+y.^i for j=1:n % z2=@pp %feval(z2,x,y,j) z2=x.^j+y.^j z1x=diff(z1,x) z2x=diff(z2,x) z1y=diff(z1,y) z2y=diff(z2,y) ff(i,j)=e^2*z1x*z2x+z1y*z2y ff(i,j)=char(ff(i,j)) ff(i,j)=strrep(ff(i,j),'*','.*') ff(i,j)=strrep(ff(i,j),'/','./') ff(i,j)=strrep(ff(i,j),'\','.\') ff(i,j)=strrep(ff(i,j),'^','.^') ss=intout(ff(i,j),0,1,0,1) end end 你去掉后面的几个转换 syms x y z1 z2 m=3 n=3 h=0.0003; w=0.0005; a=0.0001 e=h/w %z1=@pp ff=sym(zeros(m,n)) for i=1:m %feval(z1,x,y,i) z1=x.^i+y.^i for j=1:n % z2=@pp %feval(z2,x,y,j) z2=x.^j+y.^j z1x=diff(z1,x) z2x=diff(z2,x) z1y=diff(z1,y) z2y=diff(z2,y) ff(i,j)=e^2*z1x*z2x+z1y*z2y ff(i,j)=char(ff(i,j)) end end 输出结果是 ff = [ 34/25, 18/25*x+2*y, 27/25*x^2+3*y^2] [ 18/25*x+2*y, 36/25*x^2+4*y^2, 54/25*x^3+6*y^3] [ 27/25*x^2+3*y^2, 54/25*x^3+6*y^3, 81/25*x^4+9*y^4] 不知道是不是你相要的, 你要是想吧*换成别的运算符号 你再做一个替代循环吧 另外intout有这个函数吗?你是不是写错了 |
4楼2008-12-05 15:16:12
zhanghcui
木虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 2116.1
- 散金: 140
- 红花: 2
- 帖子: 208
- 在线: 229.4小时
- 虫号: 659790
- 注册: 2008-11-22
- 专业: 传递过程
5楼2008-12-08 09:04:02













回复此楼