24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1772  |  回复: 9

lkbiandou

金虫 (小有名气)

[求助] 请教一个matlab求解非线性方程组的问题

问题是:
T(i,j,1)=初值,就是整个第一页都是一样的值,请问这个该怎么处理?
现在编的程序根本无法运行起来的。各位帮帮忙,帮我看看怎么办。
拜谢各位了!


function myEquations_test
clear all ; clc;
Tin(1:10,1:10,1)=483.15;
x0=Tin(1:10,1:10,1)
T=fsolve(@TxEquations,x0);
function f = TxEquations(T)
global n F G rc dz M  i j k
clc;clear;
m=10; n=10;K=10;
Ramda = 0.45;       % W/(m K)
Kw=1.2;
Tw=483.15;
R=0.08;
x0=0.3959; dx=0.06041;
dz=0.1;
Tin=483.15;
  %反应器入口
  a5=1; a6=1; d33=2; d44=3;
%  T(:,:,;
for k=1:K;
    for j=1:n;
        for i=2:m;
            %k=1,入口位置
            T(i,j,1)=483.15;               
            %初始条件AD段的处理,i=1
            T(2,j,k)=T(1,j,k)-dx*Kw*R/Ramda*(T(1,j,k)-Tw);
            %AB段,j=1的处理
            T(i+1,1,k)=T(i,1,k)+0;
            %CD段,j=n
            T(i+1,n,k)=T(i,n,k)+0;           
            %除边界以外浓度和温度的表达式
            T(i,j,k+1)=T(i,j,k)+dz*(a5*(d33+d44)+a6);         
        end            
    end   
end
T
%--------------------------------------------------------------------------

[ Last edited by lkbiandou on 2013-7-30 at 23:04 ]
回复此楼

» 猜你喜欢

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

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

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

感谢参与,应助指数 +1
去掉子函数里的clc;clear;
showmethemoney
2楼2013-07-31 14:45:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lkbiandou

金虫 (小有名气)

引用回帖:
2楼: Originally posted by csgt0 at 2013-07-31 14:45:37
去掉子函数里的clc;clear;

版主,你好。谢谢你的帮助!
可是去掉之后还是出现了错误,能帮我再看看吗?
谢谢您了
3楼2013-07-31 15:18:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

引用回帖:
3楼: Originally posted by lkbiandou at 2013-07-31 15:18:52
版主,你好。谢谢你的帮助!
可是去掉之后还是出现了错误,能帮我再看看吗?
谢谢您了...

function f = TxEquations(T)
的返回的f是哪个?你没有给返回值
showmethemoney
4楼2013-07-31 15:26:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lkbiandou

金虫 (小有名气)

引用回帖:
4楼: Originally posted by csgt0 at 2013-07-31 15:26:35
function f = TxEquations(T)
的返回的f是哪个?你没有给返回值...

版主,你好。
我想解决的问题是这样的,T(i,j,1)=Tin表示的是第一面的温度,也是初值,然后T(i,j,k)表示第k面上每个点的温度,他与其他温度点的关系在for语句里面了,我现在想求解的就是在初值条件下,每个面上每个点的温度,也就是T。
您看我应该怎么做呢
5楼2013-07-31 15:30:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

引用回帖:
5楼: Originally posted by lkbiandou at 2013-07-31 15:30:04
版主,你好。
我想解决的问题是这样的,T(i,j,1)=Tin表示的是第一面的温度,也是初值,然后T(i,j,k)表示第k面上每个点的温度,他与其他温度点的关系在for语句里面了,我现在想求解的就是在初值条件下,每个面上每 ...

就是从第一层T计算剩下的9层T吗,那你直接修改子程序,不要主程序了,不需要解方程呀。不过你的for循环里问题很多,跟算法有关,得仔细调调。
showmethemoney
6楼2013-07-31 16:09:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lkbiandou

金虫 (小有名气)

引用回帖:
6楼: Originally posted by csgt0 at 2013-07-31 16:09:39
就是从第一层T计算剩下的9层T吗,那你直接修改子程序,不要主程序了,不需要解方程呀。不过你的for循环里问题很多,跟算法有关,得仔细调调。...

是的,我就是想通过第一层来计算其余各层的,那就是去掉解方程那个选项?直接用子程序处理啊?
版主您觉得for循环主要是那些问题了?
7楼2013-07-31 16:30:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

引用回帖:
7楼: Originally posted by lkbiandou at 2013-07-31 16:30:48
是的,我就是想通过第一层来计算其余各层的,那就是去掉解方程那个选项?直接用子程序处理啊?
版主您觉得for循环主要是那些问题了?...

不知道是不是这样的。主要是矩阵维数超了
CODE:
clear all ; clc;
T(1:10,1:10,1)=483.15;
m=10; n=10;K=10;
Ramda = 0.45;       % W/(m K)
Kw=1.2;
Tw=483.15;
R=0.08;
x0=0.3959; dx=0.06041;
dz=0.1;
%反应器入口
a5=1; a6=1; d33=2; d44=3;
   
for k=1:K-1;
    for j=1:n;
        for i=1:m-1;
             %k=1,入口位置
           % T(i,j,1)=483.15;               
            %初始条件AD段的处理,i=1
             T(2,j,k)=T(1,j,k)-dx*Kw*R/Ramda*(T(1,j,k)-Tw);  %变更k层第2行数据,第一层不变
             %AB段,j=1的处理
             T(i+1,1,k)=T(i,1,k)+0;           %变更k层第1列数据
             %CD段,j=n
             T(i+1,n,k)=T(i,n,k)+0;           %变更k层第n列数据
             %除边界以外浓度和温度的表达式
             T(i,j,k+1)=T(i,j,k)+dz*(a5*(d33+d44)+a6);     %当前层计算下一层     
        end            
     end   
end

showmethemoney
8楼2013-07-31 17:00:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lkbiandou

金虫 (小有名气)

引用回帖:
8楼: Originally posted by csgt0 at 2013-07-31 17:00:17
不知道是不是这样的。主要是矩阵维数超了

clear all ; clc;
T(1:10,1:10,1)=483.15;
m=10; n=10;K=10;
Ramda = 0.45;       % W/(m K)
Kw=1.2;
Tw=483.15;
R=0.08;
x0=0.3959; dx=0.06041;
dz ...

之前一直有个疑问,就是for循环的时候,i,j,k的取值范围该怎么办呢,。
我自己再尝试下,今天非常感谢你,总体来说是有温度数据出来了,比起之前那样全是错误的提示,要进步了许多了。
9楼2013-07-31 22:54:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lkbiandou

金虫 (小有名气)

引用回帖:
8楼: Originally posted by csgt0 at 2013-07-31 17:00:17
不知道是不是这样的。主要是矩阵维数超了

clear all ; clc;
T(1:10,1:10,1)=483.15;
m=10; n=10;K=10;
Ramda = 0.45;       % W/(m K)
Kw=1.2;
Tw=483.15;
R=0.08;
x0=0.3959; dx=0.06041;
dz ...

版主,您好。我现在对方程做了些修改。方程代码如下:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
m=10; n=10;K=10;
Ramda = 0.45;       % W/(m K)
Kw=1.2;
Tw=483.15;
R=0.08;
x0=0.3959; dx=0.06041; df=pi/6/10;
dz=0.1;
Tin=483.15;
  %反应器入口
  a5=1; a6=1;
  %d33=2; d44=3;
%  T(:,:,;
for k=2:K;
    for j=1:n;
        for i=1:m;
            while i<=1;
                %T(i,j,1)=483.15;
                T(1,j,k+1)=T(1,j,k)+dz*(a5*(1/(x0+i*dx)^2*(T(1,j+1,k)-2*T(1,j,k)+T(1,j-1,k))/df^2+...
                (T(2,j,k)-2*T(1,j,k)+T(1,j,k)+dx*Kw*R/Ramda*(T(1,j,k)-Tw))/dx^2+...
                1/(x0+i*dx)*(T(2,j,k)-T(1,j,k)-dx*Kw*R/Ramda*(T(1,j,k)-Tw)/(2*dx)))+a6);    %i=1的处理
            end
            while j<=1;
                T(i,1,k+1)=T(i,1,k)+dz*(a58(1/(x0+i*dx)^2*(T(i,2,k)-2*T(i,1,k)+T(i,2,k))/df^2+...
                (T(i+1,1,k)-2*T(i,1,k)+T(i-1,1,k))/dx^2+1/(x0+i*dx)*(T(i+1,1,k)-T(i-1,1,k))/(2*dx))+a6);%j=1的处理
            end
            while j>=n;
                T(i,n,k+1)=T(i,n,k)+dz*(a5*(1/(x0+i*dx)^2*(T(i,n-1,k)-2*T(i,n,k)+T(i,n-1,k))/df^2+...
                (T(i+1,n,k)-2*T(i,n,k)+T(i-1,n,k))/dx^2+1/(x0+i*dx)*(T(i+1,n,k)-T(i-1,n,k))/(2*dx))+a6);%j=n的处理
            end
            d33=1/(x0+i*dx)^2*(T(i,j+1,k)-2*T(i,j,k)+T(i,j-1,k))/df^2;
            d44=(T(i+1,j,k)-2*T(i,j,k)+T(i-1,j,k))/dx^2+1/(x0+i*dx)*(T(i+1,j,k)-T(i-1,j,k))/(2*dx);            
            T(i,j,k+1)=T(i,j,k)+dz*(a5*(d33+d44)+a6);         
        end            
    end   
end
f=T;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
就是当i=1的时候,有一个表达式,但是j,k可以随意变化的。
然后就是当j=1或者n的时候,i,k可以随意变化。
k=1的时候是初始条件,就是T(i,j,1)=483.15固定值。
在上述条件之外,T(i,j,k)有一个表达式。
版主,您看,这个方程组怎么解呢,谢谢了!版主帮帮忙了,已经为这个问题花费很久时间了
10楼2013-08-02 14:53:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lkbiandou 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 生物考研337分求调剂 +3 cgxin 2026-03-30 4/200 2026-03-30 23:00 by Evan_Liu
[考研] 一志愿华中师范化学332分求调剂 +3 Lyy930824@ 2026-03-29 3/150 2026-03-30 20:15 by DHUSHUAI
[考研] 各位老师好,我的一志愿为北京科技大学085601材料专硕 +10 Koxui 2026-03-28 10/500 2026-03-30 19:33 by 源_2020
[考研] 309求调剂 +15 谁不是少年 2026-03-29 15/750 2026-03-30 19:28 by 2026材料调剂
[考研] 抱歉 +3 田洪有 2026-03-30 3/150 2026-03-30 19:11 by 迷糊CCPs
[考研] 342求调剂 +4 加油a李zs 2026-03-26 4/200 2026-03-30 16:39 by 晶体之美
[考研] 348求调剂 +6 小懒虫不懒了 2026-03-28 6/300 2026-03-30 10:29 by Evan_Liu
[考研] 085600,材料与化工321分求调剂 +10 大馋小子 2026-03-28 10/500 2026-03-29 23:35 by 飞行日记西
[考研] 294分080500材料科学与工程求调剂 +8 柳溪边 2026-03-26 8/400 2026-03-29 20:42 by 唐沐儿
[考研] 329求调剂 +10 钮恩雪 2026-03-25 10/500 2026-03-29 13:32 by peike
[考研] 279求调剂 +4 蝶舞轻绕 2026-03-29 4/200 2026-03-29 09:45 by laoshidan
[考研] 330分求调剂 +5 qzenlc 2026-03-29 5/250 2026-03-29 07:37 by 无际的草原
[考研] 一志愿太原理工安全工程300分,求调剂 +5 0857求调剂. 2026-03-24 6/300 2026-03-28 22:04 by zhq0425
[考研] 311(085601)求调剂 +4 liziyeyeye 2026-03-28 4/200 2026-03-28 18:50 by 535743368
[考研] 药学105500求调剂 +3 Ssun。。 2026-03-28 3/150 2026-03-28 11:24 by lxf170613
[考研] 340求调剂 +5 jhx777 2026-03-27 5/250 2026-03-28 04:18 by fmesaito
[考研] 308求调剂 +7 墨墨漠 2026-03-25 7/350 2026-03-27 14:47 by 狂炫麦当当
[考研] 085600,材料与化工321分,求调剂 +9 大馋小子 2026-03-27 9/450 2026-03-27 14:30 by mmm just
[考研] 0703化学一志愿南京师范大学303求调剂 +3 zzffylgg 2026-03-24 3/150 2026-03-27 10:42 by shangxh
[考研] 一志愿天津大学339材料与化工求调剂 +3 江往卖鱼 2026-03-26 3/150 2026-03-26 09:42 by 王小欠i
信息提示
请填处理意见