Мне нужен код для записи данных двух кругов, чтобы экспортировать их в виде анимации (vmd). Это должно дать мне около 6000 данных (3000 за круг).
Когда я запускаю программу, она записывает только данные первого круга.
Как мне записать два набора данных в один файл?
Вот код, который я использовал
Program circulo
implicit double precision(A-H,O-Z)
Character*4 W1,W6
Character*4 W2,W7
Open(3,file='circular.xyz',access='append',action='readwrite')
open(9,file='circular.dat',form='formatted',action='readwrite')
Call Circular1
Call Circular2
Stop
End
c*******************************************************************************
Subroutine Circular1
implicit double precision(A-H,O-Z)
Dimension x(9000),y(9000),z(9000)
Character*4 W1,W6
W1='Rb'
W6=' '
Natomos = 1
rewind(3)
rewind(9)
write(6,*) 'dame el valor del radio'
read(5,*)Radio
write(6,*) 'dame el valor del angulo inicial'
read(5,*) Phio
write(6,*) 'dame el valor de la velocidad angular'
read(5,*) wo
write(6,*) 'dame el valor de la aceleracion angular'
read(5,*) alpha
write(6,*) 'Estoy trabajando'
Pi = 3.1416
Fact = Pi/180.0d0
Phio = Phio*Fact
Nciclos = 3000
t = 0.0
dt =0.005
do i = 1,Nciclos
write(3,*)Natomos
write(3,*)
Phi = Phio + wo*t +.5*alpha*t*t
x(i) = Radio*cos(Phi)
y(i) = Radio*sin(Phi)
z(i) = 0.0
t = t + dt
write(9,23)x(i),y(i)
write(3,12)w1,w6,x(i),y(i),z(i)
end do
23 FORMAT(2F15.6)
12 FORMAT(A4,A8,3F22.6)
close(9)
close(3)
RETURN
END subroutine
c**************************************************************************
Subroutine Circular2
implicit double precision(A-H,O-Z)
Dimension a(9000),b(9000),c(9000)
Character*4 W2,W7
W2='Hg'
W7=' '
Natomos = 1
rewind(3)
rewind(9)
write(6,*) 'dame el valor del radio2'
read(5,*)Radio2
write(6,*) 'dame el valor del angulo inicial2'
read(5,*) Phio2
write(6,*) 'dame el valor de la velocidad angular2'
read(5,*) wo2
write(6,*) 'dame el valor de la aceleracion angular2'
read(5,*) alpha2
write(6,*) 'Estoy trabajando'
Pi = 3.1416
Fact = Pi/180.0d0
Phio2 = Phio2*Fact
Nciclos = 3000
t = 0.0
dt =0.005
do i = 1,Nciclos
write(3,*)Natomos
write(3,*)
Phi = Phio2 + wo2*t +.5*alpha2*t*t
a(i) = Radio2*cos(Phi)
b(i) = Radio2*sin(Phi)
c(i) = 0.0
t = t + dt
write(9,23)a(i),b(i)
write(3,12)w2,w7,a(i),b(i),c(i)
end do
23 FORMAT(2F15.6)
12 FORMAT(A4,A8,3F22.6)
close(9)
close(3)
RETURN
END subroutine