关于manipulate里的参数范围调用表达式的情况
mathematica吧
全部回复
仅看楼主
level 1
xst0402time 楼主
我的目标是要画A这个目标函数关于du的一个二维图像,因为du的取值 范围也会受cn,cr参数的影响,分别由表达式下项f1和上限f2来表示。但是在Manipulate画图时,如果 用 f1和f2来表示 du的上下限时,软件无法调用f1和f2,可以调用A 。请问这是什么原因呢?总是显示不是机器精确 实数。
Clear[A]
Clear[f1]
Clear[f2]
A[cn_, cr_, du_] := cn + cr - du
f1[cn_, cr_] := cn - cr
f2[cn_, cr_] := cn + cr + 1
Manipulate[Plot[A[cn, cr, du], {du, f1[cn, cr], f2[cn, cr]}], {cn, 0, 1}, {cr, 0, 1}]
如果把Manipualte里的f1和f2直接换成函数 表达式就可以
2019年04月02日 09点04分 1
level 7
用initialization吧
2019年04月02日 14点04分 2
请问如果 要用initialization,这段 代码具体要怎么写呢?非常感谢
2019年04月03日 01点04分
level 7
你这样其实没错,出错的原因应该是你之前的函数定义没运行。另外Initialization可以这样写:这样就能随Manipulate一起起作用了。
2019年04月03日 06点04分 3
1