麻烦看一下这个matlab写的程序错在哪里
最佳回答
最新回答共有2条回答
-
2026-04-08 02:06:02淡然的睫毛膏
回复问题分析 你的这段程序问题太多了,条件说的也不够清楚,所以,分析很大程度上靠猜测:1、程序中有多处sigma应为字母f(出现在12处,共计16个),例如: isigma--> if(4处) sigmaprintsigma --> fprintf (2处) osigmasigma--> off (2处) sigmasolve --> fsolve (2处) oversigmalow --> overflow (2处)我感到非常奇怪,为什么会出现这样的错误? 2、函数开始处:function[x,y]=Solvequation(a,DB,sigma,r,tau)if C>=DB a=C;else a=DB;end 存在两个问题:(1)C被使用但未定义;(2)被传入的参数a根本没有用到。怀疑被传入的第一个参数应该是C而不是a,即函数定义应为function[x,y]=Solvequation(C,DB,sigma,r,tau) 3、调用函数的数据没说清楚。按照你所给的数据: σE=1。03402127,E=6852804951,r=3。25%,τ=1,B=195162000 σE =0。43666672,E=2503241663,r=3。25%,τ=1,B=3155000000这些符号与函数Solvequation的输入参数(C,DB,sigma,r,tau)并不能很清晰地对应。猜测可能按照下面的对应关系: σE --> sigma E --> C r --> r τ --> tau B --> DB 如果按照这样对应关系调用函数,得到的结果分别是:(1)第一组数据overflow!Too small。x = 0。2880y = 3。7690e+010(2)第二组数据x = 0。2000y = 1。0932e+010参考代码修改后的函数以及调用代码如下(可保存在一个M文件中运行):function zd918361556824217139sigma=1。03402127;C=6852804951;r=3。25;tau=1;DB=195162000;[x,y]=Solvequation(C,DB,sigma,r,tau)sigma =0。43666672;C=2503241663;r=3。25;tau=1;DB=3155000000;[x,y]=Solvequation(C,DB,sigma,r,tau)function[x,y]=Solvequation(C,DB,sigma,r,tau)if C>=DB a=C;else a=DB;endy=a/2;w=a/10;eye=a/1000;N=50;h1=0;h2=1e+5;max=w*N+y;while w>=eye J=0; while max>=y J=J+1; %equation 1 x1=fsolve(@(x)x*y*quadl('exp(-t。^2/2)/sqrt(2*pi)',0,(log(y/DB)+x。^2*tau/2+r*tau)/(x。*tau^0。5))-C*sigma,0。2,optimset('display','off')); %equation 2 x2=fsolve(@(x)DB*exp(-r*tau)*quadl('exp(-t。^2/2)/sqrt(2*pi)',0,(log(y/DB)-x。^2*tau/2+r*tau)/(x*tau^0。5))-y*quadl('exp(-t。^2/2)/sqrt(2*pi)',0,(log(y/DB)+x。^2*tau/2+r*tau)/(x*tau^0。5))+C,0。2,optimset('display','off')); %optimization y if abs(h1-h2)>abs(x1-x2) h1=x1;h2=x2;l=y;M=J; end y=y+w; end if M<=1 fprintf('overflow!Too large。');break else if M>=N fprintf('overflow!Too small。');break end end y=l-w;max=y+2*w;w=w/10;endx=(h1+h2)/2;y=l;
热门文章
- 康达学院专转本五年制
- 高考一个考场分ab卷吗
- not only but also用法
- 某物体做自由落体运动,从释放开始计时,则物体在前2s内的平均速度为______m/s,物体下落2m时的速度大小为______m/s.
- 三角函数公式大全表格
- 地理中考必背知识点2022
- 2013-2014学年小学六年级科学上学期期末考试试卷及答案
- 人教版2014-2015学年小学五年级英语第二学期期中教学质量检测试卷及答案
- 【Linux驱动开发】设备树详解(二)设备树语法详解
- 别跟客户扯细节
- 在别的城市买房子能落户吗
- 卖房前要把装修贷还完吗
- 高中政治教学提高教学效果的方法探究
- “互联网+”背景下的初中英语课堂教学改革与创新策略研究
- 2022年终止合同范本
- 租房合同范本范文
- 如何挑选土豆
- 如何挑选土鸡
