Skip to content

SangeetaSMCS/TAMCIS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TAMCIS

The Trajectory Analysis of Multidimensional Chemical Interaction Space (TAMCIS) is a systematic approach to deal with multidimeansional order parameter space for the entire trajectory. It mainly tries to annote the trajeotory data in the chosen p-dimensional space ($\Gamma$ space) by filtering out the time homogeneous fluctuations. The workflow for TAMCIS is given as follows:

Assumping that single molecule-wise chemical interactions are already calculated for entire trajectory length and stored in a organized format in a folder name "iii" for say tri-Isoleucine system Example Folder Structure :

  1. Determination of order parameters in $\Gamma$ space and value of p. This involved data extraction in xyz format : XYZ file : peptide_name pep_H_end_end_contact pep_H_end_mid_contact pep_H_mid_mid_contact sidechain_pep_contact time [ order parameter list with time]
#INPUT : peptide name, base_interaction_json, fiber_seganme_json, frame_end
#        parameters_list = ["pep_H_end_end_contact","pep_H_end_middle_contact","pep_H_middle_middle_contact","sidechain_pep_contact"]
#---- It calls general_code.py
#OUTPUT : input_TAMCIS.json , This xyz file store every information so further TAMCIS code take this file as INPUT eg. #"iii_pep_H_end_end_contact_pep_H_end_mid_contact_pep_H_mid_mid_contact_sidechain_pep_contact_time.xyz"
# -----------------------
# EDIT LINES 290-319
#------------------------
python3 step1_multi_D_OP_data_extraction_trajectory_xyz_general.py
  1. Look into time independent dataset of the all molecule for each order parameter seperately for taking decision about the manual bining step: Bar plot of the entire dataset. IT WILL TAKE INPUT "input_TAMCIS.json" automatically. JUST RUN the code
 #INPUT : No manual input needed
 #OUPUT : png : "iii_analysis_4_bining_chbsc.png"
python3 step2_analysis_for_binning_parameter.py
  1. Manually bin each parameter in a chemically meaningful way.
#INPUT : INSIDE CODE mention the binning for individual order parameter, as the INDEX OF THE ORDER PARAMETER STARTS FROM 1 and store in dictionary formate
#OUTPUT : updated input_TAMCIS.json and  the binned xyz file eg. "iii_pep_H_end_end_contact_pep_H_end_mid_contact_pep_H_mid_mid_contact_sidechain_pep_contact_time_BINNED.xyz"
#-------------------
# EDIT LINE : 10
#-------------------
python3 step3_manual_binning_parameters_general.py
  1. Clustering on the binned data :
#INPUT : input_TAMCIS.json and XXX_BINNED.xyz
#OUTPUT : updated input_TAMCIS.json and clustering dat file eg. "iii_cluster_data_ee_em_mm_sc_pep_min_sample_1_without_time_tgap_1_BINNED.dat"
# Copy the input_TAMCIS.json and XXX_BINNED.xyz file formed after binning : to the location where clustering script is executed [High Memory Computation]
# maruti : node 37-43
module load codes/python-3.9.15
python3 step4_clustering_multi_D_binned_data_general.py

NOTE : Copy to your analysis location : output cluster dat file and ALSO the input_TAMCIS.json [this file have been updated]

  1. Organize the clustering data to json file format
#INPUT : No manual input , it automatically takes input_TAMCIS.json
#OUTPUT : Sorted clusters json file eg. "iii_cluster_sorted_data_ee_em_mm_sc_pep_min_sample_1_without_time_tgap_1_BINNED.json" and updated input_TAMCIS.json
python3 step5_organize_cluster_general.py
  1. Extarct stray molecules information timewise Copy : iii_all_cluster_of_size_1_1.json (example) to your working location.
# LINE 52-53 provide the peptide name and num_frame
python3 step6_sizewise_cluster_gather.py
  1. This post processing step where stray molecules are removed from the clusters
#INPUT : shortcut tag, alphanumeric name and stray molecule information eg. "iii_all_cluster_of_size_1_1.json"
#OUTPUT : clusters with alphanumeric name srored in json eg. "iii_cluster_alphanumeric_name_chbsp.json" and updated input_TAMCIS.json
#--------------------------------------------------
# LINE 184 : Provide a shortcut tag for output file
#--------------------------------------------------  
python3 step7_post_processing_stray_info_remove.py
  1. General sanity check for any mismatch and just run this code
INPUT : No manual input need
python3 step8_check_postprocess.py
  1. Class-wise classification and sorting
#INPUT: order parameter name to understand the class and colors assigned to each class
#OUTPUT: json for classwise classification and respective $\Gamma$ clusters in each class eg. "iii_sorted_dict_classes_gamma_cluster.json"
# EDIT LINE 110-117
python3 step9_sort_gamma_clusters_bin_and_classes.py
  1. Classwise looking into the % population evalution of $\Gamma$ clusters
#INPUT : Relative percentage population for heatmap dictionary for each class
# For time being it has been set so no need to change
#OUTPUT : $\leq 2^p-1$ Heatmap plots
#-----------------------------
# EDIT LINE 10
#-----------------------------
python3 step10_heatmap_time_all_possible_classwise_norm_sys_size_v1.py
  1. Self-assembly mechanism in terms of evolution of $\Gamma$-classes
#INPUT : No manual input need
#OUTPUT : Line plot : eg., iii_lineplot_classes_vs_time.png
# ---------------------------
# 
#-----------------------------
python3 analysis2_temporal_evol_all_classes_heatmap_n_lineplot.py
  1. Correlation of spatial clusters with respect to the $\Gamma$-classes : 2D-Heatmap for time independent data of molecular clusters of all sizes partitioned into desire size binning wrt. the prominent $\Gamma$ classes.
#INPUT : all_clusters_of_size_x_y.json, x,y belongs [2,6,11,21,51,101,151,"above"]
#OUTPUT : 2D Heatmap : eg. "iii_corr_heatmap_clssize_class.png"
#------------------------------------
#
#------------------------------------
python3 analysis_new1_heatmap_class_vs_clustersize_norm_csize_v2.py
  1. Filtering those $\Gamma$ clusters based on population over time and looking into the time evolution of those prominent $\Gamma$ clusters. For that we have put 2 filters : 1) population per timestep for $\gamma$ cluster atleast cross the cutoff_num_mol_per_frame 2) $\Gamma$ cluster must present atleast cutoff_num_occurences time out of the total length of the trajectory
#INPUT : percent_population ,cutoff_num_occurences, cutoff_num_mol_per_frame
#OUTPUT : Heatmap plot eg. "iii_CI_cluster_heatmap_time_evolution_chbsp_v2.png", update input_TAMCIS.json with import prominent classes
#------------------------
# EDIT LINES 9-11
#------------------------
python3 step11_heatmap_time_vs_class_clusters_filtered.py
  1. Temporal every molecular hopping in prominent classes over time
#INPUT : no manual input
#OUTPUT : every molecular temporal hopping stored in csv file eg. "iii_temporal_hopping_chbsp.csv" and count for number of hopping exist for each prominent classes respect to $\Gamma$ clusters in json file eg.   
"iii_CI_cluster_hop_count_chbsp.json"
#ALERT : It is significant time consuming

python3 step12_temporal_molecular_hopping_imp_classes.py
  1. heatmap plot every molecule in the system temporal hopping in classes
#INPUT:No manual input
#OUTPUT:png eg. "iii_temporal_hopping_for_fiber1_chbsp_v1.png"
python3 step13_all_molecular_hopping_plot_v1.py
  1. heatmap plot selected molecule in the system temporal hopping in classes
#INPUT: json of segname list for selected molecules , selected indices if don't want to look at all segnames
#OUTPUT: png eg. "iii_temporal_hopping_for_fiber1_chbsp_v1.png"
#---------------------------
#EDIT LINES 39-43, 84-91
#--------------------------
python3 step14_selected_molecular_hopping_plot_v1.py
  1. Assign VMD color ID for prominent class
#INPUT: Will ask for respective color VMD id through input with running the code
#OUTPUT: json file VMD_color_prominent_class.json

python3 step15_assign_VMD_color_for_pclasses.py
  1. Move making : Extract tcl file of selected segnames (molecules participating in self assembly) for prominent classes for every timestep. Stored formate : e.g: frame_xxx/iii_category_segname_chbsp.tcl
#INPUT: json of segname list for selected molecules 
#OUTPUT: tcl files for every frame inside frame_id for respective class with color id set
#---------------------------
#EDIT LINES 56-60
#--------------------------
python3 step16_selected_molecular_hopping_for_movie.py
  1. Render VMD picture for each frames with each classes
#INPUT: set starting and ending frame number : LINE : 1 in step17_script_vmd_render_pic.sh
#INPUT: peptide tag LINE: 56 in step17_visualize_CI_clusters_movie.tcl
#OUTPUT : .tga files inside e.g. movie_iii
chmod 777 step17_script_vmd_render_pic.sh
./step17_script_vmd_render_pic.sh
  1. Look at VMD graphics at each frame for selected molecules
#INPUT: set peptide lll LINE:56
# set frame_id 499 LINE:66
vmd -e step18_visualize_CI_clusters_timepoint.tcl

About

Trajectory Analysis for Multi-dimensional Chemical Interaction Space

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published