|
想在输入文件中,输入行数,通过行数中的坐标,然后自动获得角度,代码已经附上,求助大家实现?[Fortran] 纯文本查看 复制代码 03 | real :: x ( 3 ) , y ( 3 ) , z ( 3 ) , angle , A , B , C , D |
06 | write ( * , * ) 'Input the name of xyz:(e.g. a)' |
08 | name 1 = trim ( name ) / / '.xyz' |
10 | open ( 13 , file = 'result.txt' ) |
12 | write ( * , "(I1)" ) 'Input the atom number' , i , ':(e.g.1)' |
16 | read ( 12 , "(11x,3(f12.6)" ) xi , yi , zi |
22 | read ( 12 , "(11x,3(f12.6))" ) xi , yi , zi |
26 | A = ( x 1 - x 2 ) + ( y 1 - y 2 ) + ( z 1 - z 2 ) / / |
27 | B = ( x 3 - x 2 ) + ( y 3 - y 2 ) + ( z 3 - z 2 ) / / |
29 | D = dsqrt ( ( x 3 - x 2 ) * * 2 + ( y 3 - y 2 ) * * 2 + ( z 3 - z 2 ) * * 2 ) / / |
31 | write ( 13 , "(a,f12.4)" ) "The angle is:" , angle / 3.141592653589793238462d0 * 180 |
|
|