用fortran语言编程解方程,

来源:百度知道 编辑:UC知道 时间:2024/06/14 10:35:07
用fortran语言编程解方程,方程的求解区间是随着方程中的一个未知数变化的:也就是说方程有两个未知数,其中一个未知数可以设定,来求解另外一个未知数。两个未知数都在根号下,在做循环的时候为什么总是出现根下有负值的情况,而我设置的求解区间明明是不可能有负值的情况啊。求求各位大虾们帮帮我啊,不然毕不了业了。。。。。哭死了,悬赏分是我仅有的那么多分啊,不要嫌少啊
谢谢各位了,前一久一直在忙别的,就没顾上这个,现在贴出来了,请帮帮忙啊,谢谢了!
我用的是试位法
方程为:
func=sqrt(y**2-x**2/a2**2)*cos(sqrt(x**2/a1**2-y**2)*a3/2)-sqrt(x**2/a1**2-y**2) *sin(sqrt(x**2/a1**2-y**2)*a3/2)
X0=2.53E12
a1=6000
a2=9000
a3= 1E-8
y乘以a3等于 从1到10,
则y的值应该为从1E8到1E9,循环的时候步长为1E7,求x的值。
关于x和y的关系:
因为两者都在根下,而且y的值可以给定,那么由根下必须大于等于零有:
X大于等于y×a1且小于等于y×a2
这个就是这个方程求解的时候,我所设置的求解区间。非常郁闷的是,只能循环一次,就出现了根下有负值的情况。
另外还有一点需要说明的是,这个方程在y从1E8到1E9这个范围内也不是处处有解,我只试过整数,比如1E8,2E8,3E8这些点就没有解。只是我也不明白:在这些点没有解的话,应该继续到下个点求解,而不是就停住不循环了。还是我的方法有问题?
还有点要声明:本人小菜鸟,长这么大,头一次编程,希望大虾们多多关照,能帮我把这个程序彻底搞出来。。。谢谢谢谢。。万分感谢。。。。
e-mail:lanshan0703@qq.com

说的也太含糊了吧

不过相信楼主,自己动手丰衣足食,加油

问题没有讲清楚
把具体问题贴出来,还有你的email

是啊,问题太不具体了,最好能写出具体的式子。才能帮你分析究竟问题在哪里。