
关于matlab求积分的问题,定有重谢
首先说明一下:下面的回答并不是针对这个问题,而是你提的另一个问题:
http://zhidao.baidu.com/question/561342396?&oldq=1
我上次也说了,那个问题并没有彻底解决,最近两天我根据你在私信里提供的原题信息又仔细考虑一下,有些新的结果,但由于该问题的答案你已经采纳,无法继续补充,而这个问题在这里放了几天没人回答,估计继续放下去解决的可能性也不大,所以,就借这个地方简单说一说。
根据你提供的原题内容:
设平行于水渠修一条路。河道中挖出的土石方要运往A(9500,4000)处(可以看作土石方堆积处入口)。为了方便运输,计划在沿水渠的公路上选择两点修建通往A处的临时公路。如何修建两条公路,可使得总的土石方运输工作量最小?水渠的函数就是y,水渠起点的横坐标为7650,终点的纵坐标14450。
可以得到这样几个方面的信息:
1、优化问题属于有约束的,两个优化变量取值都在【7650,14450】之间;
2、你建立的模型可能存在问题,主要是确定c点的方程可能欠妥
abs(int(sqrt(diff(y,X)^2+1),X,a,c)-int(sqrt(diff(y,X)^2+1),X,c,b))=abs(de-dr)
我认为应该改成
abs(int(sqrt(diff(y,X)^2+1),X,a,c))+de = abs(int(sqrt(diff(y,X)^2+1),X,c,b))+dr
3、另一处疑似错误的表达式:
y2=int(Q2,t,b,14550)
怀疑应该是
y2=int(Q2,t,c,14550)
如果按照前述信息对原优化程序作适当修改,则可以得到最优解为 a=10231,b=9004(根据题意,二者可以互换),如图所示,感觉还是比较符合实际情况的。
对于你现在这个问题,应该可以根据那个问题的代码写出类似的程序来。个人时间精力所限,就不替你写了。要提醒的是,编程之前还是要花时间先建立好模型,模型一旦错了,后面全错。