Releases: deGrootLab/Sfilter_Cylinder
Cycle corrected rate
Cycle corrected rate added
The passage from A to B is now grouped by number of ion jump, so that a forward passage and backward passage can be distinguished.
nojump counting
new way of counting
count_nojump.py
is a new script that works on nojump trajectory. you can either specify the upper and the lower boundary like this:
{
"pdb":"../em_dry.gro",
"xtc":"../fix_atom_c_100ps_dry_nojump.xtc",
"selection_dict":
{
"K" : "name K"
},
"mem_layer":
{
"SF":
[
"resid 66 and resname TYR and name O",
"resid 63 and resname THR and name OG1"
]
}
}
or provide the membrane selection like this:
{
"pdb":"xx.pdb",
"xtc":"xx/fix_nojump.xtc",
"selection_dict":
{
"Wat" : "resname SOL and name OW"
},
"mem_str":"resname POPC and name P"
}
Fixing compatibility with non-K+ ion
read_k_cylinder
can now determine what the input ion is and output 6-letter-code as K
New kinetic module
Bug fix for analyse_distribution.py
.
It used to read all the files twice.
New module kinetic
is introduced to replace the MSM
All of the functions were rewritten with memory and performance in mind. Parallelization was introduced for counting the passage.
new script : analyse_distribution.py
analyse_distribution.py
is now provided for analysis of the SF state distribution. It computes the time average proportion of each SF state. It also adds the error estimate by Bootstrap. If you provide a list of files using the -i
flag, it will treat each file as a different condition and bootstrap frame. If you provide a json file with a list of files (example), it can also treat each replica as an independent sample and bootstrap replica.
New default SF
New geometry definition
The new geometry definition checks both xy and z. See the picture here: https://github.com/huichenggong/Sfilter_Cylinder/blob/main/tutorial/01_sfilter_tutorial.ipynb
Version printing
From this version, the version information will be printed out in both count_cylinder.py
and match_xtck.py
.
Known Bug
In the output trajectory, the SF atom is not in the original order. This output cannot be further processed by count_cylinder.py
. The SF detect will fail.
flexible geometry
Now the -cylinderRad
, -S0_Rad float
, -S5_cutoff float
will be properly passed to the state_detect
function. Before this, state_detect
function always used the default value. MSM module is still under development.
Water-reduced xtc output
New feature
Three new arguments have been added to count_cylinder.py
, -n_water
, -reduced_xtc
, and -non_wat
. Now you can output a reduced-water xtc (and pdb) file while running the basic analysis.
You can use -n_water
to specify the number of water you want to keep, use -reduced_xtc
to specify the output xtc file name, use -non_wat
to specify what non-water atoms you want to output. Two non-water selections have been implemented, nWat
and SF
. nWat
stands for all the non-water atoms. SF
will save the selectivity filter and all the atoms that are specify in K_name
argument, such as POT and SOD.
Example
cd test/01-NaK2K/1-Charmm/with_water
count_cylinder.py -pdb ../em.gro \
-xtc fix_atom_c_100ps.xtc -K POT \
-SF_seq THR VAL GLY TYR GLY \
-n_water 400 -reduced_xtc fix_400wat.xtc -non_wat nWat
This will generate two files fix_400wat_nWat.pdb
and fix_400wat.xtc
. Only the 400 closest water has been kept. This roughly reduces the xtc by half.
bug fix on 0.3
The correct __init__.py
under util folder is now provided.