SUBROUTINE synaptic_map_construct (thisno,
& num_presynaptic_cells, num_postsynaptic_cells,
& map, num_presyninputs_perpostsyn_cell, display)
c Construct a map of presynaptic cells of one type to postsyn.
c cells of some type.
c display is an integer flag. If display = 1, print gjtable
INTEGER thisno, num_presynaptic_cells,
& num_postsynaptic_cells,
& num_presyninputs_perpostsyn_cell,
& map (num_presyninputs_perpostsyn_cell,
& num_postsynaptic_cells)
INTEGER i,j,k,l,m,n,o,p
INTEGER display
double precision seed, x(1)
seed = 297.d0
map = 0
k = 1
do i = 1, num_postsynaptic_cells
do j = 1, num_presyninputs_perpostsyn_cell
call durand (seed, k, x)
c This defines a presynaptic cell
L = int ( x(1) * dble (num_presynaptic_cells) )
if (L.eq.0) L = 1
if (L.gt.num_presynaptic_cells)
& L = num_presynaptic_cells
map (j,i) = L
end do
end do
c Possibly print out map when done.
if ((display.eq.1).and.(thisno.eq.0)) then
write (6,800)
800 format(' SYNAPTIC MAP ')
do i = 1, num_postsynaptic_cells
write (6,50) map(1,i), map(2,i),
& map(num_presyninputs_perpostsyn_cell,i)
50 FORMAT(3i6)
end do
endif
END
|