У меня очень простая петля do, в которой я хочу сохранить (хранить) элементы вектора, который вычисляется в цикле на другой, например, я могу вспомнить элементы этого второй вектор вне цикла. Моей наивности тест следующим образом: тест программыХранить элементы в векторе Fortran
implicit none
integer :: num,i
real*8, DIMENSION(3, 1) :: pos
real*8, dimension(:),allocatable :: x(:)
real*8 :: step,delta
pos = 0.0 ! clear the vector all components are equal to zero
pos(1,1)=1. ! only first elements of the vector 'pos' of object 1 is diff. from zero
num=1000
delta = 1.
step = 0.
allocate(x(num)) ! allocate a vector with dimension equal to num
x=0.
do while (step < num)
pos(1,1) = pos(1,1) + 0.5d0 ! move the objects
x=pos(1,1) ! store the elements of vector 'pos' in vector 'x'
step = step + delta
end do
print*, x(120) ! print the 120th elements of the vector x
end program test
Я думаю, что проблема в том, как я передать элементы из «поз» до «х» вектора.
Большое спасибо за помощь.
МНОГО СПАСИБО !!! У меня была гораздо более сложная программа, которая вычисляет «pos» с длинной функцией, и мне нравится хранить в x результаты для повторного использования их вне цикла, в другом цикле в другой части программы. Здесь я публикую только тестовую программу, которая имитирует мою более сложную. –