Documentation for module cp_subsys_types

types that represent a subsys, i.e. a part of the system

source: cp_subsys_types.F
Loading...

public Types:

cp_subsys_type
represents a system: atoms, molecules, their pos,vel,...
cp_subsys_p_type
represent a pointer to a subsys, to be able to create arrays of pointers

public Subroutines/Functions:

returns information about various attributes of the given subsys
releases a subsys (see doc/ReferenceCounting.html)
retains a subsys (see doc/ReferenceCounting.html)
sets various propreties of the subsys
Pack components of a subsystem particle sets into a single vector
Unpack components of a subsystem particle sets into a single vector

public Types:

TYPE :: cp_subsys_p_type

represent a pointer to a subsys, to be able to create arrays of pointers


POINTER :: subsys the pointer to the subsys

TYPE :: cp_subsys_type

represents a system: atoms, molecules, their pos,vel,...


INTEGER
:: ref_count = 1 ...
REAL(dp),
DIMENSION(3,2) :: seed ...
POINTER :: atomic_kinds => NULL() list with all the kinds in the actual subsys
POINTER :: particles => NULL() list with the particles of the actual subsys
POINTER :: shell_particles => NULL() list with the shells of the actual subsys if shell-model is used
POINTER :: core_particles => NULL() list with the shells of the actual subsys if shell-model is used
POINTER :: local_particles => NULL() the particles that are local to the actual processor
POINTER :: para_env => NULL() the parallel environment of the actual subsys
POINTER :: molecules => NULL() ...
POINTER :: molecule_kinds => NULL() list with the molecule kinds
POINTER :: local_molecules => NULL() the molecule structures of the actual subsys that are local to this processor
DIMENSION(:), POINTER :: colvar_p => NULL() ...
POINTER :: gci => NULL() ...
POINTER :: multipoles => NULL() ...
POINTER :: atprop => NULL() ...
POINTER :: virial => NULL() ...
POINTER :: results => NULL() ...
TYPE(cell_type),
POINTER :: cell => NULL() ...

SUBROUTINEcp_subsys_get(subsys, ref_count, atomic_kinds, atomic_kind_set, particles, particle_set, local_particles, molecules, molecule_set, molecule_kinds, molecule_kind_set, local_molecules, para_env, colvar_p, shell_particles, core_particles, gci, multipoles, natom, nparticle, ncore, nshell, nkind, atprop, virial, results, cell)

returns information about various attributes of the given subsys

Arguments:
POINTER
:: subsys the subsys you want info about
INTEGER,
INTENT(out),
OPTIONAL
:: ref_count ...
OPTIONAL, POINTER
:: atomic_kinds ...
OPTIONAL, POINTER
:: atomic_kind_set(:) ...
OPTIONAL, POINTER
:: particles ...
OPTIONAL, POINTER
:: particle_set(:) ...
OPTIONAL, POINTER
:: local_particles ...
OPTIONAL, POINTER
:: molecules ...
OPTIONAL, POINTER
:: molecule_set(:) ...
OPTIONAL, POINTER
:: molecule_kinds ...
OPTIONAL, POINTER
:: molecule_kind_set(:) ...
OPTIONAL, POINTER
:: local_molecules ...
OPTIONAL, POINTER
:: para_env ...
OPTIONAL, POINTER
:: colvar_p(:) ...
OPTIONAL, POINTER
:: shell_particles ...
OPTIONAL, POINTER
:: core_particles ...
OPTIONAL, POINTER
:: gci ...
OPTIONAL, POINTER
:: multipoles ...
INTEGER,
INTENT(out),
OPTIONAL
:: natom ...
INTEGER,
INTENT(out),
OPTIONAL
:: nparticle ...
INTEGER,
INTENT(out),
OPTIONAL
:: ncore ...
INTEGER,
INTENT(out),
OPTIONAL
:: nshell ...
INTEGER,
INTENT(out),
OPTIONAL
:: nkind ...
OPTIONAL, POINTER
:: atprop ...
OPTIONAL, POINTER
:: virial ...
OPTIONAL, POINTER
:: results ...
TYPE(cell_type),
OPTIONAL, POINTER
:: cell ...

SUBROUTINEcp_subsys_release(subsys)

releases a subsys (see doc/ReferenceCounting.html)

Arguments:
POINTER
:: subsys the subsys to release

SUBROUTINEcp_subsys_retain(subsys)

retains a subsys (see doc/ReferenceCounting.html)

Arguments:
POINTER
:: subsys the subsys to retain

SUBROUTINEcp_subsys_set(subsys, atomic_kinds, particles, local_particles, molecules, molecule_kinds, local_molecules, para_env, colvar_p, shell_particles, core_particles, gci, multipoles, results, cell)

sets various propreties of the subsys

Arguments:
POINTER
:: subsys the subsys you want to modify
OPTIONAL, POINTER
:: atomic_kinds ...
OPTIONAL, POINTER
:: particles ...
OPTIONAL, POINTER
:: local_particles ...
OPTIONAL, POINTER
:: molecules ...
OPTIONAL, POINTER
:: molecule_kinds ...
OPTIONAL, POINTER
:: local_molecules ...
OPTIONAL, POINTER
:: para_env ...
OPTIONAL, POINTER
:: colvar_p(:) ...
OPTIONAL, POINTER
:: shell_particles ...
OPTIONAL, POINTER
:: core_particles ...
OPTIONAL, POINTER
:: gci ...
OPTIONAL, POINTER
:: multipoles ...
OPTIONAL, POINTER
:: results ...
TYPE(cell_type),
OPTIONAL, POINTER
:: cell ...

SUBROUTINEpack_subsys_particles(subsys, f, r, s, v, fscale, cell)

Pack components of a subsystem particle sets into a single vector

Arguments:
POINTER
:: subsys ...
REAL(dp),
INTENT(out),
OPTIONAL
:: f(:) ...
REAL(dp),
INTENT(out),
OPTIONAL
:: r(:) ...
REAL(dp),
INTENT(out),
OPTIONAL
:: s(:) ...
REAL(dp),
INTENT(out),
OPTIONAL
:: v(:) ...
REAL(dp),
INTENT(in),
OPTIONAL
:: fscale ...
TYPE(cell_type),
OPTIONAL, POINTER
:: cell ...

SUBROUTINEunpack_subsys_particles(subsys, f, r, s, v, fscale, cell)

Unpack components of a subsystem particle sets into a single vector

Arguments:
POINTER
:: subsys ...
REAL(dp),
INTENT(in),
OPTIONAL
:: f(:) ...
REAL(dp),
INTENT(in),
OPTIONAL
:: r(:) ...
REAL(dp),
INTENT(in),
OPTIONAL
:: s(:) ...
REAL(dp),
INTENT(in),
OPTIONAL
:: v(:) ...
REAL(dp),
INTENT(in),
OPTIONAL
:: fscale ...
TYPE(cell_type),
OPTIONAL, POINTER
:: cell ...