24小时热门版块排行榜    

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

没有实力

银虫 (小有名气)

[求助] 初学mathematica,琢磨了一天实在不行了,求教高手!

先把我写的内容直接贴出来,问题在后面:

y1 = 40; y2 = 20; b = 0.18;
Subscript[c, 1] = 10^-3; Subscript[c, 2] = 10^-4;
Subscript[d, 1] = Subscript[d, 2] = 40;
e = 1;
g = 0.72;
h = 10^-14;
(*前面是已知的常数*)
f[x_, y1_,
   y2_] = (y1/b)/(
    1 + Subscript[c, 1]/x +
     Subscript[c, 1]*Subscript[d, 1]*e/(b*x)) + (y2/b)/(
    1 + Subscript[c, 2]/x +
     Subscript[c, 2]*Subscript[d, 2]*e/(b*x)) == g + h/x - x;
t = x /. Solve[f[x, y1, y2]][[4]];
pH = -Log10[t]
(*这里得出我要的结果*)
Ai1 = (y1/b)/(
  1 + Subscript[c, 1]/t + Subscript[c, 1]*Subscript[d, 1]*e/(b*t));
Ai2 = (y2/b)/(
  1 + Subscript[c, 2]/t + Subscript[c, 2]*Subscript[d, 2]*e/(b*t));
y1 = t*Ai1/Subscript[c, 1] + Ai1;
y2 = t*Ai2/Subscript[c, 2] + Ai2;
(*这里重新得到新的y1和y2*)
f[x_, y1_,
   y2_] = (y1/b)/(
    1 + Subscript[c, 1]/x +
     Subscript[c, 1]*Subscript[d, 1]*e/(b*x)) + (y2/b)/(
    1 + Subscript[c, 2]/x +
     Subscript[c, 2]*Subscript[d, 2]*e/(b*x)) == g + h/x - x;
t = x /. Solve[f[x, y1, y2]][[4]];
pH = -Log10[t]
(*这里重复了一次,继续得到我要的结果*)

前面是直接复制出来的,不知道高手们能不能用,我再传一个图片。

我的问题是,我需要重复计算这个pH值,重复两百次,然后画出pH值随重复次数的变化曲线图,目前方程可能还有点问题,得到的曲线图不一定好看。关键问题是现在我一不会写循环语句,二不会写作图的命令。初学mathematica,请勿见笑,麻烦高手指教!如果能帮上忙仅有的三十余枚金币全部奉上。多谢帮助!

截图mathematica

[ Last edited by 没有实力 on 2012-5-24 at 10:56 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangww2011

木虫 (著名写手)

循环的话可以用Table,楼主可以看mathematica的自带帮助,非常全的,呵呵
绘图检索plot就给出一堆有有用的绘图函数
2楼2012-05-24 19:56:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 没有实力 的主题更新
信息提示
请填处理意见