| 查看: 2176 | 回复: 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用的不熟。 请大家帮忙写写这段程序,重点就是这个向量的定义,最好能注明清楚~~谢谢。 |
» 猜你喜欢
有时候真觉得大城市人没有县城人甚至个体户幸福
已经有3人回复
CSC & MSCA 博洛尼亚大学能源材料课题组博士/博士后招生|MSCA经费充足、排名优
已经有5人回复
酰胺脱乙酰基
已经有8人回复
有70后还继续奋斗在职场上的吗?
已经有6人回复
博士延得我,科研能力直往上蹿
已经有7人回复
退学或坚持读
已经有27人回复
面上基金申报没有其他的参与者成吗
已经有5人回复
遇见不省心的家人很难过
已经有22人回复
» 本主题相关价值贴推荐,对您同样有帮助:
物理模拟是用c语言好还是fortran好?
已经有30人回复
如何用fortran编写高斯白噪声程序
已经有6人回复
求初学者能用的fortran编译器
已经有6人回复
有关fortran的一次而问题,希望大家能帮帮忙,谢谢
已经有4人回复
写了一个fortran90的小程序,编译通不过,请大侠帮忙
已经有59人回复
【求助】fortran中怎么存储不确定长度的数据【已完结】
已经有6人回复
【求助】这样的公式,在fortran里该怎么写了,谢谢【求助成功】
已经有4人回复
» 抢金币啦!回帖就可以得到:
Postdoctoral Research Fellow Position in Causal Inference Weill CorneIl Medicine
+1/92
诚聘 有机光电材料计算方向 博士后、科研助理、访问学生
+1/75
中国海洋大学与中国水产科学研究院 联合培养 专硕 食品加工与安全
+1/75
山东征女友,坐标济南
+1/65
南方医科大学生物医学工程学院招收申请考核制博士生2名、博士后2名(2026)
+1/31
科罗拉多大学 Congjun Yu 课题组招聘
+1/29
江汉大学轩亮教授课题组招博士研究生/博士后
+1/18
江汉大学轩亮教授课题组招博士研究生/博士后
+1/15
哈工大 张乃庆课题组招收博士快响计划(名额充足),通过后随时入学
+1/13
中国科学院深圳先进技术研究院——招聘博士后
+3/10
哈工大(深圳)物理招收2026年9月入学博士生1个名额
+1/8
太原理工大学集成电路学院院长团队招收2026年博士研究生
+1/7
上海理工顾敏院士/李蔚团队招收2026级博士研究生 (集成光学、量子信息方向)
+1/7
上海理工大学顾敏院士、张轶楠教授团队 招聘 2026级 光学工程 博士生
+1/6
【博士招生】哈工大(深圳)智能学部机器人与先进制造学院 陆文杰老师课题组
+1/4
邵阳学院食品与化学工程学院硕士调剂
+1/3
德国Karlsruhe Institute of Technology招收电化学储能及联合培养CSC博士等
+1/2
求资源
+1/2
【博士后/科研助理招聘-北京理工大学-集成电路与电子学院-国家杰青团队】
+1/1
双一流联合团队招聘团队青年人才与博后
+1/1
★ ★ ★
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













回复此楼













