chfl_selection
type¶chfl_selection
¶chfl_selection
allow to get the index of atoms in a
chfl_frame
, matching a selection language. The matching atoms are
given in an array of chfl_match
.
Type fields: |
|
---|
chfl_match
¶This type contains the matched atoms for a given selection in the atoms
array. Values in the atoms
array are valid up to the size
of this
match. If the match size is 2, then atom(1)
and atom(2)
are valid,
and atom(3)
and atom(4)
contains invalid indexes.
Type fields: |
|
---|
chfl_selection%
init
(selection[, status])¶Initialize the selection from the given selection
string. This
subroutine allocate memory which must be released with
chfl_selection%free()
.
See the selection documentation for the selection language specification.
Parameters: | selection [character(len=*)] :: The selection string |
---|---|
Options: | status [integer(chfl_status)] :: status code of the operation. If it
is not CHFL_SUCCESS , use chfl_last_error() to learn
more about the error. |
chfl_selection%
copy
(selection[, status])¶Initialize the selection with a copy of selection
. This subroutine
allocate memory which must be released with chfl_selection%free()
.
The copy does not contains any state, and chfl_selection%evaluate()
must be called again before using chfl_selection%matches()
.
Parameters: | selection [type(chfl_selection)] :: selection to copy |
---|---|
Options: | status [integer(chfl_status)] :: status code of the operation. If it
is not CHFL_SUCCESS , use chfl_last_error() to learn
more about the error. |
chfl_selection%
size
([status])¶Get the size of the selection. This is the number of atoms we are selecting together. This value is 1 for the ‘atom’ context, 2 for the ‘pair’ and ‘bond’ context, 3 for the ‘three’ and ‘angles’ contextes and 4 for the ‘four’ and ‘dihedral’ contextes.
Return: | integer :: selection size |
---|---|
Options: | status [integer(chfl_status)] :: status code of the operation. If it
is not CHFL_SUCCESS , use chfl_last_error() to learn
more about the error. |
chfl_selection%
string
([status])¶Get the selection string used to create this selection. If the string is
longer than CHFL_STRING_LENGTH
, it will be truncated.
Return: | character (len=CHFL_STRING_LENGTH) :: selection string |
---|---|
Options: | status [integer(chfl_status)] :: status code of the operation. If it
is not CHFL_SUCCESS , use chfl_last_error() to learn
more about the error. |
chfl_selection%
evaluate
(frame, count[, status])¶Evaluate the selection for a given frame
, and store the number of
matches in count
. Use chfl_selection%matches()
to get the
matches.
Parameters: |
|
---|---|
Options: | status [integer(chfl_status)] :: status code of the operation. If it
is not |
chfl_selection%
matches
(matches[, status])¶Get the matches for the selection
after a call to
chfl_selection%evalutate()
, in the pre-allocated matches
array.
Parameters: | matches [type(chfl_match),dimension(:)] :: Array of chfl_match
of the size given by chfl_selection%evaluate() . |
---|---|
Options: | status [integer(chfl_status)] :: status code of the operation. If it
is not CHFL_SUCCESS , use chfl_last_error() to learn
more about the error. |
chfl_selection%
free
()¶Destroy a selection, and free the associated memory