22INTEGER (KIND=c_int) FUNCTION read_trj (trj_f, ltrj, natrj, nbstrj, is_npt) bind (C,NAME='read_trj_')
33INTEGER (KIND=c_int),
INTENT(IN) :: ltrj, natrj, is_npt
34INTEGER (KIND=c_int),
DIMENSION(NSP),
INTENT(IN) :: nbstrj
35CHARACTER (KIND=c_char),
DIMENSION(*),
INTENT(IN) :: trj_f
36CHARACTER (LEN=ltrj) :: trj_file
39 INTEGER,
INTENT(IN) :: unitfile, natl
44 trj_file(
i:
i) = trj_f(
i)
48inquire (file=trj_file, exist=isok)
51 open (unit=20, file=trj_file,
action=
'read', status=
'old',
err=001)
60 call show_error (
"Impossible to allocate memory"//char(0), &
61 "Function: read_trj"//char(0),
"Table: FULLPOS"//char(0))
68 call show_error (
"Impossible to allocate memory"//char(0), &
69 "Function: read_trj"//char(0),
"Table: TAB_OF_TYPE"//char(0))
77 read (20, *,
err=002)
z,
fullpos(
l,1,
i),
fullpos(
l,2,
i),
fullpos(
l,3,
i)
87 if (is_npt .eq. 1)
call send_steps (
ns)
void show_error(char *error, int val, GtkWidget *win)
show error message
double precision, dimension(:,:,:), allocatable fullpos
double precision, parameter angtobohr
character(len=2), dimension(:), allocatable tab_of_type
character(len=2), dimension(:), allocatable label
integer(kind=c_int) function read_trj(trj_f, ltrj, natrj, nbstrj, is_npt)
integer function test_length(unitfile, natl)