matlab 画图直接存储_MATLAB中运算过程中的数据保存以及作图

第1题.同意楼上

第2题.修改后的代码,不知是不是你所要的结果:

clear

format long

syms k1 k01 VV  % z=dφ/dt

V=[];

z=[];

for j=1:1:40

VVstep=0.0002;        %VV代表电极电势φ

VVfinal=0.0160;

VV=0.008+VVstep*j

k1=150*exp(19.462*VV);

k01=150*exp(-19.462*VV);

equation_a=k01*200;

equation_b=-(5*k1+1000+k01*200);

equation_c=2*5*k1+1000+50*k01;

equation_d=-5*k1;

Coefficient=[equation_a equation_b equation_c equation_d]

temp=roots(Coefficient)

equation_y01=temp(1)

equation_x01=(200*equation_y01^2-200*equation_y01+50)/5

equation_z01=(0.059-VV)/(1.1*10^(-7))-96485*(k1*(1-equation_y01)^2-k01*equation_x01*equation_y01)/(10*10^(-10))

equation_y02=temp(2)

equation_x02=(200*equation_y02^2-200*equation_y02+50)/5

equation_z02=(0.059-VV)/(1.1*10^(-7))-96485*(k1*(1-equation_y02)^2-k01*equation_x02*equation_y02)/(10*10^(-10))

equation_y03=temp(3)

equation_x03=(200*equation_y03^2-200*equation_y03+50)/5

equation_z03=(0.059-VV)/(1.1*10^(-7))-96485*(k1*(1-equation_y03)^2-k01*equation_x03*equation_y03)/(10*10^(-10))

hold on

V=[V,VV];

z=[z;equation_z01,equation_z02,equation_z03];

end

plot(V,z)

legend('equation z01','equation z02','equation z03')

后注:

1.代码效率比较低,不容易阅读,变量名太长了点儿;

2.计算后有虚部产生,不知为何,能力有限。请检查算法是否无误

3.记得加分号以抑制中间结果的输出,如果想要输出中间结果最好用disp说明一下,以免阅读混乱;,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值