| 查看: 2339 | 回复: 8 | |||
| 本帖产生 1 个 程序强帖 ,点击这里进行查看 | |||
[交流]
【求助】用fortran怎么描述下面这样的情况,我是新手,请大家帮忙
|
|||
|
已经知道直线向量a上面的2个点(x1,y1,z1), (x2,y2,z2)和直线向量b上面的2个点(x3,y3,z3), (x4,y4,z4),求直线a,b的夹角。(0~180degree) 夹角公式是cos=[(x2-x1)*(x4-x3)+(y2-y1)*(y4-y3)+(z2-z1)*(z4-z3)]/[squr(x2-x1)+squr(y2-y1)+squr(z2-z1)]*[squr(x4-x3)+squr(y4-y3)+squr(z4-z3)]. 其实我最大困难是在fortran中怎么定义这个新的函数-直线向量(恩,这个向量类似一个2组数组)。本人是 对fortran用的不熟。 请大家帮忙写写这段程序,重点就是这个向量的定义,最好能注明清楚~~谢谢。 |
» 猜你喜欢
博士招生
已经有5人回复
夜,静悄悄的
已经有8人回复
国自科送审了吗
已经有8人回复
收到国自然专家邀请后几年才会有本子送过来评
已经有5人回复
研究生做的很差,你们会让毕业吗?
已经有6人回复
26年博士申请自荐-电催化
已经有5人回复
2026博士或科研助理转27年博士
已经有5人回复
26年申博自荐-计算机视觉
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
物理模拟是用c语言好还是fortran好?
已经有30人回复
如何用fortran编写高斯白噪声程序
已经有6人回复
求初学者能用的fortran编译器
已经有6人回复
有关fortran的一次而问题,希望大家能帮帮忙,谢谢
已经有4人回复
写了一个fortran90的小程序,编译通不过,请大侠帮忙
已经有59人回复
【求助】fortran中怎么存储不确定长度的数据【已完结】
已经有6人回复
【求助】这样的公式,在fortran里该怎么写了,谢谢【求助成功】
已经有4人回复
» 抢金币啦!回帖就可以得到:
东南大学废弃碳资源利用-杰青团队-27级博士生(提前入学)-及博后、科研助理招募
+1/176
上海嘉定周边俩小时车程
+5/170
东南大学废弃碳资源利用团队(杰青/海优团队)博士后、科研助理及27级博士生招募
+1/128
2026年江西师范大学人文地理与低碳经济方向拟招收1名“申请入学制”学术博士研究生
+2/110
河南师范大学水产学院博士研究生招生
+1/86
电子科技大学(深圳)高等研究院陈明豪课题组招收推免硕士研究生
+1/81
太行山徒步之凌水河(一)
+1/79
Google ai pro 会员分享
+1/28
坐标北京,83年男征女友
+1/26
南京林业大学-国家级青年人才团队 招2026级博士 (合成化学)
+1/10
深圳理工大学-湖南大学项目招收钙钛矿方向博士生
+1/9
吉林大学任雷课题组招机器人和触觉传感方向2026年入学博士生
+1/9
英国大学招收电子散热及数字孪生研究方向的博士生
+1/9
【限时补录】澳科大2026年秋季入学药剂学硕士研究生1-2名
+1/5
注册小木虫周年大礼包领取不了
+1/5
求推荐计算化学/材料计算/AI for Chemistry方向博士课题组(偏理论/计算)
+1/5
成都中医药大学药学院 谢恬教授招收2026级药物化学,有机合成方向的博士生
+1/4
招收2026年秋季入学博士生1名(河北工业大学/北京科技大学联合 增材制造/生物材料)
+1/3
科研新人必看:立项/开题/报奖都绕不开科技查新
+1/2
浙江农林大学 林业工程/木材科学与技术方向拟招录一名2026级博士
+1/2
★ ★ ★
tpp001(金币+5):很感谢您的帮忙。不过我这里的数据有点复杂,我根据您的这个程序转换不过来,不知道能不能在麻烦您一下,可以吗?输入文件详细的情况在下面回复中,谢谢 2010-12-18 15:38:27
余泽成(金币+3):辛苦了! 2010-12-19 19:27:55
tpp001(金币+5):很感谢您的帮忙。不过我这里的数据有点复杂,我根据您的这个程序转换不过来,不知道能不能在麻烦您一下,可以吗?输入文件详细的情况在下面回复中,谢谢 2010-12-18 15:38:27
余泽成(金币+3):辛苦了! 2010-12-19 19:27:55
|
写了一个简单的小程序,可以满足你使用的要求: ![]() ![]() 输入文件的含义如下: ![]() 下面是三个输入文件以及测试结果 ![]() 测试输入对应的两个矢量如下图所示: ![]() ![]() 测试输入对应的两个矢量如下图所示: ![]() ![]() 测试输入对应的两个矢量如下图所示: ![]() [ Last edited by maomao1210 on 2010-12-18 at 14:59 ] |
2楼2010-12-18 14:56:39
|
真的不好意思,我的看懂了您上面的代码,可是我还是不会用来写我这个复杂点的情况,可能我有点笨了,不知道能不能麻烦您看看我这个情况,谢谢。。。。 总共有29条直线向量,每条直线向量上都知道2个点的坐标,A(a1,a2,a3),B(b1,b2,b3),【所以输入文件中有58个点的坐标】而我要得出他们任意2条直线向量的夹角。。。 输入文件的格式是这样的 a1 a2 a3 b1 b2 b3 #这是第一条直线向量上面的2个点坐标 c1 c2 c3 d1 d2 d3 #这是第2条直线向量上面的2个点坐标 ...... ..... (n-1)1 (n-1)2 (n-1)3 n1 n2 n3 #这是第n条直线向量上面的2个点的坐标 一共58行数据 |
3楼2010-12-18 15:51:00
★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
zyj8119(金币+10, 程序强帖+1):希望maomao1210继续努力。。。 2010-12-18 16:52:40
小木虫(金币+0.5):给个红包,谢谢回帖交流
zyj8119(金币+10, 程序强帖+1):希望maomao1210继续努力。。。 2010-12-18 16:52:40
4楼2010-12-18 16:34:04
|
非常感谢版主您的帮忙,回复的也非常及时。我有一点疑问向您请教。 在调用子程序的时候,在主程序中式这样的写的: Call Sub(A(1,Idicp),A(1,Jdicp),Output) 而在子程序中: Subroutine Sub(A,B,Output) Implicit None Real*8 A(3),B(3) Real*8 Dicp,AA,BB,AB,Output AB=A(1)*B(1)+A(2)*B(2)+A(3)*B(3) AA=A(1)*A(1)+A(2)*A(2)+A(3)*A(3) BB=B(1)*B(1)+B(2)*B(2)+B(3)*B(3) 在子程序中需要用到的自变量A(3)是一个一维数组,大小是3。 而您在主程序中设定的自变量A(1,Idicp)是一个二位数组。我就是这一点想不通,因为:这个A(1,Idicp)在主程序中我认为它对应了一个具体的数据:A(1,Idicp)= X2-X1。而在子程序中会用到A(1),A(2),A(3),这3个数据的,所以我老是觉得它们对应不上去。 ![]() 还有一个问题是:在输出结果的时候,我希望输出的时候,没有重复的夹角出现比如line 1与 line2 之间的夹角,和line 2 与line 1之间的夹角是一样,只要输出一个就行。还有就是 同一直线的夹角也不用输出来。因为我后面还个程序输出的数据进行一些分析的。谢谢 |
5楼2010-12-19 10:34:05
6楼2010-12-19 11:02:45
7楼2011-01-06 20:17:44
8楼2011-01-07 21:01:50
9楼2011-01-07 22:16:52












回复此楼













