This is part of the piv module | |
It is only available if you configure PLUMED with ./configure –enable-modules=piv . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list. |
Calculates the PIV-distance.
PIV distance is the squared Cartesian distance between the PIV [55] [112] associated to the configuration of the system during the dynamics and a reference configuration provided as input (PDB file format). PIV can be used together with FUNCPATHMSD to define a path in the PIV space.
The following example calculates PIV-distances from three reference configurations in Ref1.pdb, Ref2.pdb and Ref3.pdb and prints the results in a file named colvar. Three atoms (PIVATOMS=3) with names (pdb file) A B and C are used to construct the PIV and all PIV blocks (AA, BB, CC, AB, AC, BC) are considered. SFACTOR is a scaling factor that multiplies the contribution to the PIV-distance given by the single PIV block. NLIST sets the use of neighbor lists for calculating atom-atom distances. The SWITCH keyword specifies the parameters of the switching function that transforms atom-atom distances. SORT=1 means that the PIV block elements are sorted (SORT=0 no sorting.) Values for SORT, SFACTOR and the neighbor list parameters have to be specified for each block. The order is the following: AA,BB,CC,AB,AC,BC. If ONLYDIRECT (ONLYCROSS) is used the order is AA,BB,CC (AB,AC,BC). The sorting operation within each PIV block is performed using the counting sort algorithm, PRECISION specifies the size of the counting array.
Pivd1: PIV ... PRECISIONcompulsory keyword the precision for approximating reals with integers in sorting. =1000 NLIST( default=off ) Use a neighbor list for distance calculations. REF_FILEcompulsory keyword PDB file name that contains the \f$i\f$th reference structure. =Ref1.pdb PIVATOMScompulsory keyword Number of atoms to use for PIV. =3 ATOMTYPEScompulsory keyword The atom types to use for PIV. =A,B,C SFACTORScale the PIV-distance by such block-specific factor =0.3,0.5,1.0,0.2,0.2,0.2 SORTcompulsory keyword Whether to sort or not the PIV block. =1,1,1,1,1,1 SWITCH1compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.6 MM=12 NN=4} SWITCH2compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} SWITCH3compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} SWITCH4compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} SWITCH5compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} SWITCH6compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} NL_CUTOFFNeighbor lists cutoff. =0.8,0.6,0.6,0.7,0.7,0.7 NL_STRIDEUpdate neighbor lists every NL_STRIDE steps. =10,10,10,10,10,10 NL_SKINThe maximum atom displacement tolerated for the neighbor lists update. =0.1,0.1,0.1,0.1,0.1,0.1 ... Pivd2: PIV ... PRECISIONcompulsory keyword the precision for approximating reals with integers in sorting. =1000 NLIST( default=off ) Use a neighbor list for distance calculations. REF_FILEcompulsory keyword PDB file name that contains the \f$i\f$th reference structure. =Ref2.pdb PIVATOMScompulsory keyword Number of atoms to use for PIV. =3 ATOMTYPEScompulsory keyword The atom types to use for PIV. =A,B,C SFACTORScale the PIV-distance by such block-specific factor =0.3,0.5,1.0,0.2,0.2,0.2 SORTcompulsory keyword Whether to sort or not the PIV block. =1,1,1,1,1,1 SWITCH1compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.6 MM=12 NN=4} SWITCH2compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} SWITCH3compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} SWITCH4compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} SWITCH5compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} SWITCH6compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} NL_CUTOFFNeighbor lists cutoff. =0.8,0.6,0.6,0.7,0.7,0.7 NL_STRIDEUpdate neighbor lists every NL_STRIDE steps. =10,10,10,10,10,10 NL_SKINThe maximum atom displacement tolerated for the neighbor lists update. =0.1,0.1,0.1,0.1,0.1,0.1 ... Pivd3: PIV ... PRECISIONcompulsory keyword the precision for approximating reals with integers in sorting. =1000 NLIST( default=off ) Use a neighbor list for distance calculations. REF_FILEcompulsory keyword PDB file name that contains the \f$i\f$th reference structure. =Ref3.pdb PIVATOMScompulsory keyword Number of atoms to use for PIV. =3 ATOMTYPEScompulsory keyword The atom types to use for PIV. =A,B,C SFACTORScale the PIV-distance by such block-specific factor =0.3,0.5,1.0,0.2,0.2,0.2 SORTcompulsory keyword Whether to sort or not the PIV block. =1,1,1,1,1,1 SWITCH1compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.6 MM=12 NN=4} SWITCH2compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} SWITCH3compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} SWITCH4compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} SWITCH5compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} SWITCH6compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=12 NN=6} NL_CUTOFFNeighbor lists cutoff. =0.8,0.6,0.6,0.7,0.7,0.7 NL_STRIDEUpdate neighbor lists every NL_STRIDE steps. =10,10,10,10,10,10 NL_SKINThe maximum atom displacement tolerated for the neighbor lists update. =0.1,0.1,0.1,0.1,0.1,0.1 ... PRINT ARGthe input for this action is the scalar output from one or more other actions. =Pivd1,Pivd2,Pivd3 FILEthe name of the file on which to output these quantities =colvar
WARNING: Both the "CRYST" and "ATOM" lines of the PDB files must conform precisely to the official pdb format, including the width of each alphanumerical field:
CRYST1 31.028 36.957 23.143 89.93 92.31 89.99 P 1 1 ATOM 1 OW1 wate 1 15.630 19.750 1.520 1.00 0.00
In each pdb frame, atoms must be numbered in the same order and with the same element symbol as in the input of the MD program.
The following example calculates the PIV-distances from two reference configurations Ref1.pdb and Ref2.pdb and uses PIV-distances to define a Path Collective Variable (FUNCPATHMSD) with only two references (Ref1.pdb and Ref2.pdb). With the VOLUME keyword one scales the atom-atom distances by the cubic root of the ratio between the specified value and the box volume of the initial step of the trajectory file.
c1: PIV ... PRECISIONcompulsory keyword the precision for approximating reals with integers in sorting. =1000 VOLUMEScale atom-atom distances by the cubic root of the cell volume. =12.15 NLIST( default=off ) Use a neighbor list for distance calculations. REF_FILEcompulsory keyword PDB file name that contains the \f$i\f$th reference structure. =Ref1.pdb PIVATOMScompulsory keyword Number of atoms to use for PIV. =2 ATOMTYPEScompulsory keyword The atom types to use for PIV. =A,B ONLYDIRECT( default=off ) Use only direct-terms (A-A, B-B, C-C, ...) SFACTORScale the PIV-distance by such block-specific factor =1.0,0.2 SORTcompulsory keyword Whether to sort or not the PIV block. =1,1 SWITCH1compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.6 MM=12 NN=4} SWITCH2compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.5 MM=10 NN=5} NL_CUTOFFNeighbor lists cutoff. =1.2,1.2 NL_STRIDEUpdate neighbor lists every NL_STRIDE steps. =10,10 NL_SKINThe maximum atom displacement tolerated for the neighbor lists update. =0.1,0.1 ... c2: PIV ... PRECISIONcompulsory keyword the precision for approximating reals with integers in sorting. =1000 VOLUMEScale atom-atom distances by the cubic root of the cell volume. =12.15 NLIST( default=off ) Use a neighbor list for distance calculations. REF_FILEcompulsory keyword PDB file name that contains the \f$i\f$th reference structure. =Ref2.pdb PIVATOMScompulsory keyword Number of atoms to use for PIV. =2 ATOMTYPEScompulsory keyword The atom types to use for PIV. =A,B ONLYDIRECT( default=off ) Use only direct-terms (A-A, B-B, C-C, ...) SFACTORScale the PIV-distance by such block-specific factor =1.0,0.2 SORTcompulsory keyword Whether to sort or not the PIV block. =1,1 SWITCH1compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.6 MM=12 NN=4} SWITCH2compulsory keyword The switching functions parameter.You ={RATIONAL R_0=0.4 MM=10 NN=5} NL_CUTOFFNeighbor lists cutoff. =1.2,1.2 NL_STRIDEUpdate neighbor lists every NL_STRIDE steps. =10,10 NL_SKINThe maximum atom displacement tolerated for the neighbor lists update. =0.1,0.1 ... p1: FUNCPATHMSD ARGthe input for this action is the scalar output from one or more other actions. =c1,c2 LAMBDAcompulsory keyword the lambda parameter is needed for smoothing, is in the units of plumed =0.180338 res: METAD ARGthe input for this action is the scalar output from one or more other actions. =p1.s,p1.z SIGMAcompulsory keyword the widths of the Gaussian hills =0.01,0.2 HEIGHTthe heights of the Gaussian hills. =0.8 PACEcompulsory keyword the frequency for hill addition =500 PRINT ARGthe input for this action is the scalar output from one or more other actions. =c1,c2,p1.s,p1.z,res.bias STRIDEcompulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output =500 FILEthe name of the file on which to output these quantities =colvar FMTthe format that should be used to output real numbers =%15.6f
When using PIV please cite [112] .
(See also PRINT)
SWITCH | The switching functions parameter.You should specify a Switching function for all PIV blocks.Details of the various switching functions you can use are provided on switchingfunction.. You can use multiple instances of this keyword i.e. SWITCH1, SWITCH2, SWITCH3... |
PRECISION | the precision for approximating reals with integers in sorting. |
REF_FILE | PDB file name that contains the \(i\)th reference structure. |
PIVATOMS | Number of atoms to use for PIV. |
SORT | Whether to sort or not the PIV block. |
ATOMTYPES | The atom types to use for PIV. |
NUMERICAL_DERIVATIVES | ( default=off ) calculate the derivatives for these quantities numerically |
NOPBC | ( default=off ) ignore the periodic boundary conditions when calculating distances |
TEST | ( default=off ) Print the actual and reference PIV and exit |
COM | ( default=off ) Use centers of mass of groups of atoms instead of atoms as specified in the Pdb file |
ONLYCROSS | ( default=off ) Use only cross-terms (A-B, A-C, B-C, ...) in PIV |
ONLYDIRECT | ( default=off ) Use only direct-terms (A-A, B-B, C-C, ...) in PIV |
DERIVATIVES | ( default=off ) Activate the calculation of the PIV for every class (needed for numerical derivatives). |
NLIST | ( default=off ) Use a neighbor list for distance calculations. |
SERIAL | ( default=off ) Perform the calculation in serial - for debug purpose |
TIMER | ( default=off ) Perform timing analysis on heavy loops. |
SFACTOR | Scale the PIV-distance by such block-specific factor |
VOLUME | Scale atom-atom distances by the cubic root of the cell volume. The input volume is used to scale the R_0 value of the switching function. |
UPDATEPIV | Frequency (in steps) at which the PIV is updated. |
NL_CUTOFF | Neighbor lists cutoff. |
NL_STRIDE | Update neighbor lists every NL_STRIDE steps. |
NL_SKIN | The maximum atom displacement tolerated for the neighbor lists update. |