先把我写的内容直接贴出来,问题在后面:
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 ] |