| 查看: 1638 | 回复: 12 | ||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | ||
fanlijuan224铁虫 (小有名气)
|
[求助]
MATLAB程序求解
|
|
|
求助高手给我解释一下这个程序,这个程序编写正确吗? x0=[0.3,0.3,0.2,0.25,0.15,0.25]; x=fsolve(@original_data,x0); 其中@original_data是什么意思啊 |
» 猜你喜欢
售一区SCI文章T0P,我:8O.551.O54,科目全,可十急
已经有4人回复
师弟论文见刊大半年才想起来申请专利,还能抢救一下吗?
已经有5人回复
某top大学教授说“能够在市场中兑现的能力才是真能力”无比同意!
已经有3人回复
售SCI文章,我:8O.5.5.1O.54,科目全,可十急
已经有3人回复
售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急
已经有3人回复
售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急
已经有3人回复
售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急
已经有3人回复
售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急
已经有3人回复
售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急
已经有3人回复
售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急
已经有4人回复

shizijun
木虫 (著名写手)
自定义头衔
- 应助: 20 (小学生)
- 金币: 3662.6
- 散金: 2205
- 红花: 6
- 帖子: 2323
- 在线: 422.6小时
- 虫号: 443442
- 注册: 2007-10-27
- 性别: GG
- 专业: 有机高分子功能材料
★
xzhdty: 金币+1, 谢谢 2012-09-03 12:25:06
xzhdty: 金币+1, 谢谢 2012-09-03 12:25:06
|
只运行test没问题,我给你加了一段做图 分别保存为test.m和original_data.m 文件 clear;clc global x0 %传递x0参数到子函数中做图 x0=[0.3,0.3,0.2,0.25,0.15,0.25]; options = optimset('Display','off'); x=fsolve(@original_data,x0,options); /////////////////////////////////////////////////// %以下为子函数 function F=original_data(x); global x0 %首先输入干基物料的元素分析,假定干基物料分子式为CHaObNc % C=input('请输入干基物料碳的质量百分数:'); % H=input('请输入干基物料氢的质量百分数:'); % O=input('请输入干基物料氧的质量百分数:'); % N=input('请输入干基物料氮的质量百分数:'); C = 0.492; H = 0.057; O = 0.413; N = 0.025; C_m=C/12; H_m=H/1; O_m=O/16; N_m=N/14; a=H_m/C_m; b=O_m/C_m; c=N_m/C_m; % a_c=input('请输入碳转化率:'); % ER=input('请输入干基物料的空燃比:'); a_c = 0.98; ER = 0.25; m=ER*(1+a/4-b/2); x_N2=3.76*m+0.5*c; % kw1=input('请输入收到基原料中水分质量百分比:'); kw1 = 0.1054; w1=(kw1/18)*(12+a*1+b*16+c*14)/(1-kw1); % kw2=input('请输入单位质量干基物料气化所添加的水蒸气数量(质量单位):'); kw2 = 0; w2=(kw2/18)*(12+a*1+b*16+c*14); % t1=input('请输入炉内反应温度:'); t1 = 900; T1=t1+273.15; Kp_1=-20552.9/T1+1.16*log(T1)-1.877*10^(-3)*T1+0.23867*10^(-6)*T1^2+14.446; Kp1=exp(Kp_1);%Kp_1代表C+CO2=2CO反应的平衡常数 Kp_2=-15556.58/T1+0.91135*log(T1)-0.40774*10^(-3)*T1+0.01*10^(-6)*T1^2+10.23273; Kp2=exp(Kp_2);%Kp_2代表C+H2O=CO+H2反应的平衡常数 Kp_3=7295.0536/T1-6.77*log(T1)+3.7576*10^(-3)*T1-0.34755*10^(-6)*T1^2+33.4798; Kp3=exp(Kp_3);%Kp_3代表C+2H2=CH4反应的平衡常数 % t2=input('请输入进入气化炉空气温度:'); t2 = 25; T2=t2+273.15; % t3=input('请输入进入气化炉水蒸气温度:'); t3 = 300; T3=t3+273.15; % a_T=input('请输入系统的热效率:'); % Qg=input('请输入原料的标准生成焓:'); a_T = 0.85; Qg = 118050; a_CO=-110520+(26.537*T1+(7.683*0.001*T1^2)/2-(1.172*10^(-6)*T1^3)/3)-8243.137; a_CO2=-393510+(26.75*T1+(42.258*0.001*T1^2)/2-(14.25*10^(-6)*T1^3)/3)-9727.85; a_H2O=-241820+(29.16*T1+(14.49*0.001*T1^2)/2-(2.022*10^(-6)*T1^3)/3)-9320.22; a_H2=(26.88*T1+(4.347*0.001*T1^2)/2-(0.3625*10^(-6)*T1^3)/3)-8204.6; a_CH4=-74810+(14.15*T1+(75.496*0.001*T1^2)/2-(17.99*10^(-6)*T1^3)/3)-7415.44; a_C6H62O02=82927+(88.627*T1+(120.74*0.001*T1^2)/2-(12.735*10^(-6)*T1^3)/3)-31678; a_C=16.68*T1+0.00216*T1^2-5165.15; a_N2_out=(3.76*m+0.5*c)*(27.32*T1+(6.226*0.001*T1^2)/2-(0.9502*10^(-6)*T1^3)/3-8413.79); a_O2=m*(28.17*T2+(6.297*0.001*T2^2)/2-(0.7494*10^(-6)*T2^3)/3-8672.146); a_N2_in=3.76*m*(27.32*T2+(6.226*0.001*T2^2)/2-(0.9502*10^(-6)*T2^3)/3-8413.79); a_H2O_in=w1*(-285830)+w2*(-241820+29.16*T3+(14.49*0.001*T3^2)/2-(2.022*10^(-6)*T3^3)/3-9315.23+43947); b6=a_T*(Qg+a_O2+a_N2_in+a_H2O_in)-a_N2_out;%能量平衡方程中的常数项 F=[x(1)+x(2)+x(5)+6*x(6)-a_c;2*x(3)+2*x(4)+4*x(5)+6.2*x(6)-a-2*(w1+w2);x(1)+2*x(2)+x(3)+0.2*x(6)-b-2*m-(w1+w2);Kp1*x(2)*x(4)-Kp2*x(1)*x(3);Kp2*Kp3*x(4)*x(3)-x(1)*x(5);a_CO*x(1)+a_CO2*x(2)+a_H2O*x(3)+a_H2*x(4)+a_CH4*x(5)+a_C6H62O02*x(6)+(1-a_c)*a_C-b6]; plot(x0,x,':bo','LineWidth',0.5,... 'MarkerEdgeColor','k',... 'MarkerFaceColor','r',... 'MarkerSize',5) xlabel('x0'); ylabel('x'); grid on |

11楼2012-09-03 11:34:56
shizijun
木虫 (著名写手)
自定义头衔
- 应助: 20 (小学生)
- 金币: 3662.6
- 散金: 2205
- 红花: 6
- 帖子: 2323
- 在线: 422.6小时
- 虫号: 443442
- 注册: 2007-10-27
- 性别: GG
- 专业: 有机高分子功能材料
【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
fanlijuan224: 金币+15 2012-09-02 16:46:43
xzhdty: 金币+1, 谢谢 2012-09-02 17:21:13
感谢参与,应助指数 +1
fanlijuan224: 金币+15 2012-09-02 16:46:43
xzhdty: 金币+1, 谢谢 2012-09-02 17:21:13
|
original_data 应该是一个自定义的m函数,例如 function f = original_data(t) f = sin(t); x0=[0.3,0.3,0.2,0.25,0.15,0.25]; x=fsolve(@original_data,x0); 就是求解方程 sin(x) = 0 在x = 0.3,0.3,0.2,0.25,0.15,0.25最近处的解。 |

2楼2012-09-01 21:22:39

3楼2012-09-02 10:01:03
fanlijuan224
铁虫 (小有名气)
- 应助: 0 (幼儿园)
- 金币: 1072
- 散金: 7
- 帖子: 59
- 在线: 25.2小时
- 虫号: 1228179
- 注册: 2011-03-10
- 专业: 能源化工

4楼2012-09-02 16:46:31










回复此楼
fanlijuan224