Hi Enia . Hi, thank you so much. I think I have successfully installed cty but I would like to ask what should be the valence and coordination number of iron if I wish to add it to it, I tried valence and coordination number of 6 but it doesn't seem to work, it's not recognized
Hi Enia . Hi, I would like to ask what should be the valence and coordination number of iron if I wish to add it to it, I tried valence and coordination number of 6 but it doesn't seem to work, it's not recognized
Hi all, I didn't manage to get ChemTrayzer running properly. Therefore, I fumbled some python together while using NetworkX as graph library. With this i don't have the problem in analyzing "large" molecules anymore and can extract the reactions from reaxff simulations. At the moment, this is just some basic code and obviously cannot extract to smiles or do some fancy analysis. But it is creating some simple figures before and after reaction. In case anybody is having issues with chemtrayzer, or...
Hi all, I didn't manage to get ChemTrayzer running properly. Therefore, I fumbled some python together while using NetworkX as graph library. By this i don't have the problem in analyzing "large" molecules anymore and can extract the reactions from reaxff simulations. At the moment, this is just some basic code and obviously cannot extract to smiles or do some fancy analysis. But, is creating some simple figures before and after reaction. In case anybody is having issues with chemtrayzer, or when...
Hi winwinwin, it looks like you are using Windows. ChemTraYzer was developed for Linux and does not work on Windows. I assume this is why you get this error when ChemTraYzer tries to call the mkdir command.
Hi Enia , it seems that I have encountered exactly the same problem with GYH123456, I tried with my own example does not work, it seems to be openbabel library problem, but I am not sure of the exact reason, please can you help us find the reason, thank you! bonds.reaxc.reac timesteps 0 to 10000000 read from "bonds.reaxc.reac" conversion of reaction time history to species concentrations... 100.00% ... species generated ... virtual reactions removed ... stoichiometric formulas generated and atom...
Hi Enia,I set norec1,10,100 respectively, but still have the problem python processing.py bonds.tatb -n 0 -i 1:6 -i 2:1 -i 3:8 -norec 1 Processing files ... bonds.tatb reading all steps, staring at timestep 0, using 10000 bytes memory, a static cutoff of 0.5, considering 1 steps for recrossing and reading each 1th step of connectivity. Identifying 1: 6, 2: 1, 3: 8 0::C 0::[OH] 320:C,[OH]:[CH3],O 350:[CH3],O:C,[OH] 630:C,[OH]:[CH3],O 1000:[CH3]: 1000:O: python processing.py bonds.tatb -n 0 -i 1:6...
Hi Enia, yes, i played around a little bit more last night, but was too tired to post. Basically, i did as you said and included sys.setrecursionlimit(10000) after the imports in processing.py. However, as i am running a newer version of openbabel there was another error in processing.py around line 790 with atom.SetImplicitValence(...) Unlike the other functions, see post above, where it was just a change of the function name and easy to resolve, this one doesn't have a replacement though. So as...
Hi GYH123456, it seems you have set another recrossing time (norec parameter than in the example. This can lead to another result than expected from the example.
Hi Wolfgang, initially we only considered small-sized molecule systems only. Due to that we did not consider the constraints imposed by python for recursive methods. While creating the graph objects that eventually iterate over all atoms to map the bonding partners it seems your molecule has reached that recursion limit. In processing.py you can try to add to the imports the lines: import sys sys.setrecursionlimit(10000) # Increase to a higher or lower values to increase the recursion limit.
just like this (ct) E:\chemtrayzer-code>python processing.py bonds.tatb -n 0 -i 1:6 -i 2:1 -i 3:8 -norec 100 Tue Nov 26 07:34:40 2024 / UTC !--------------- ChemTraYzer - ReaxFF Data Processing ---------------! ! ! ! Version 2017-04-07 ! ! Author Malte Doentgen, LTT RWTH Aachen University ! ! Email chemtrayzer@ltt.rwth-aachen.de ! ! ! ! [<work file="">]</work> [-start <start time="">]</start> [-mem <memory in="" !="" bytes="">]</memory> [-cut <satic bond="" order="" cutoff="">]</satic> [-n <number...
Hi Enia Mudimu, I have installed CTY2.0, but when using the case study, the situation shown in the figure below occurs, and the result does not match the case study. May I ask what the reason for this is?
Hi Wolfgan Veresteck, as shown on the website you should run the bonds.tatb file with the processing.py script and not with the analyzing.py. The outcome would be a reaction file called “bonds.tatb.reac” which can then be supplied to the analyzing.py script (Website example): python processing.py example/bonds.tatb -i 1:6 -i 2:1 -i 3:8 -norec 5 -> bonds.tatb.reac python analyzing.py examples/bonds.tatb.reac Please contact us again, if it's still not working.
After the example worked i tried my own molecule (PPEK + O) and get an error message. First Question: I have several types of O (coming from the classical force field one is in the aromatic rings, etc. should sth like this work (multiple mappings to C, H and O)? python ~/Downloads/ChemTraYzer_2.1/processing.py bonds.reaxff.dump -gen -dp 0.2 -i 1:6 -i 2:1 -i 3:1 -i 4:8 -i 5:8 -i 6:8 -i 7:8 -i 9:1 -i 10:6 -i 11:6 -i 12:6 -i 13:6 -i 14:8 I get an error message: Is there a known limit to the molecule...
Hi Enia Mudimu, that was a mistake on my side. Sorry for misunderstanding the instructions. However, I am getting a new error on OBBOndObject (see below). It seems the API to OpenBabel has changed the function name GetBO to GetBondOrder. Running sed -i "s/GetBO()/GetBondOrder()/g" *.py on the python scripts solved the issue. Thanks for the support. Regards Wolfgang wolfgang@L18001:~/Downloads/ChemTraYzer_2.1$ wolfgang@L18001:~/Downloads/ChemTraYzer_2.1$ wolfgang@L18001:~/Downloads/ChemTraYzer_2.1$...
Hi Wolfgan Veresteckg, as shown on the website you should run the bonds.tatb file with the processing.py script and not with the analyzing.py. The outcome would be a reaction file called “bonds.tatb.reac” which can then be supplied to the analyzing.py script (Website example): python processing.py example/bonds.tatb -i 1:6 -i 2:1 -i 3:8 -norec 5 -> bonds.tatb.reac python analyzing.py examples/bonds.tatb.reac Please contact us again, if it's still not working.
Hi all, I don't even get the example running. Has anybody seen this error before? No idea why max(reactions) should be empty. It's the example and expected to get some output. Regards Wolfgang wolfgang@L18001:~/Downloads/ChemTraYzer_2.1$ python analyzing.py -gen -dp -step 1000 -main test example/bonds.tatb Fri Nov 22 20:36:52 2024 / UTC !-------------- ChemTraYzer 2 - ReaxFF Data Analyzing ---------------! ! ! ! Version 2018-11-29 ! ! Author Malte Doentgen, LTT RWTH Aachen University ! ! Email chemtrayzer@ltt.rwth-aachen.de...
Dear Felix, Thanks for your excellent post-processing program! I simulated the gas-phase combustion by fix deposit command to inject a few oxygen atoms every several timesteps in the simulation box. So the bond file obtained will increase by several atoms every several timesteps. I process the bond file through the processing.py with no error message but it will just exit the program. The details are as follows: Processing files ... D:/LAMMPS/combustion/incidence_free_4/conti/incidence_AO_2/bonds.out...
Dear Felix, Thanks for your excellent post-processing program! I simulated the gas-phase combustion by fix deposit command to inject a few oxygen atoms every several timesteps in the simulation box. So the bond file obtained will increase by several atoms every several timesteps. I process the bond file through the processing.py with no error message but it will just exit the program. The details are as follows: Processing files ... D:/LAMMPS/combustion/incidence_free_4/conti/incidence_AO_2/bonds.out...
Hi Jiliang, thanks for using ChemTraYzer! Because ChemTraYzer is written in Python, the Segmentation Fault is probably caused by C code like openbabel (which is used to convert the SMILES into PNGs). Openbabel's SMILES implementation is limited to molecules with less than ~250 atoms. One other users had this error before (here) and apparently solved it by reinstalling CTY. Honestly, I don't have a good solution for openbabels limitations, you can try switching off the picture output (leave out "-dp")....
Hi machen, Thanks! We appretiate it! It seems the error you have is caused by a too large "tmpA" value (which gets bigger the more reactants contribute to one reaction step). Maybe you chose the recrossing value ("-norec") too high and all reactions are lumped into one, with loads of reactants? What happens if you only analyze half of the trajectory, with e.g. "-end 50000"? If your system is actually that big, you could also try casting into numpy.ulonglong instead of float64, because all of "tmpA"/"intA"/"dt"/"pos"...
Hi Bhuvan! Thank you for using our software! A negative species count is surely an error, apologies for that. The explanation why this can happen is a bit lengthy, but involves a known shortcoming of CTY2: when a resonating molecule changes its structure without a bond breaking/forming, then the composition changes, but no reaction is registered by CTY. In the end, the species concentration profile is recalculated from the sequence of reactions, and a missing reaction can lead to negative numbers....
Hi gakki! Thanks for your interest in ChemTraYzer! Unfortunately, CTY cannot handle liquid or solid systems. As reaction recognition is based on ReaxFF bond orders, it will be confused when analyzing non-gaseous systems. As a suggestion, you could write a script to remove all solvent or surface atoms from the bond output file. The analysis would then only apply to the solute/reagent molecules. However, solvation effects can't be taken into account in the optimizations. Best, Felix
Hi Felix, thank you very much for developing such excellent software. When I run the command: python analyzing.py bonds.reaxc.reac -main reac -dp 0.1 -gen id, after running for a while, it prompts: Error for Segmentation fault, as shown in the image. How can I solve it, my simulation system is 2190 atoms, and some of the previous reaction trajectories can be output normally, and they have been stuck here. Looking forward to your reply, thank you! !!@felixschmalz
First of all, thank you very much for providing such a great software, it helps me a lot. But now I have some small problems and I hope you can help me solve them if you can. intA += np.float64(tmpA)*np.float64(dt) ^^^^^^^^^^^^^^^^ OverflowError: int too large to convert to float Is there any solution? scipy does not support decimal
Hi Felix, Thank you for the useful software. Is there anyway to get average life span of species detected using CTY? Also in the output file of analyzing.py ".spec.tab", I found some species count is negative. Can you please explain what does the negative count means? Thanks in advance!
Hi Felix, Thank you for the useful software. Is there anyway to get average life span of species detected using CTY?
Dear Felix, I am interested in using your CTY software to find the reaction pathways and the product yields of some important compounds. However, I have encountered some difficulties and I hope you can help me. I wonder if your software can only perform gas-phase reaction analysis, because I cannot find some major products, such as furans, 5-hydroxymethylfurfural, furfural, etc., using CTY. Do you have any suggestions on how to use your software to simulate these reactions and obtain the desired...
Dear Felix, Thanks for your effort in this software. Following your instructions, I got a same error message as following: Processing files ... example/bonds.tatb reading all steps, staring at timestep 0, using 10000 bytes memory, a static cutoff of 0.5, considering 5 steps for recrossing and reading each 1th step of connectivity. Identifying 1: 6, 2: 1, 3: 8 /usr/include/c++/8/bits/stl_vector.h:950: std::vector<_Tp, _Alloc>::const_reference std::vector<_Tp, _Alloc>::operator const [with _Tp = std::__cxx11::basic_string<char>;...
Hi Xiance Zhang, Thanks, hopefully the code will be helpful for your work! The script master.py reads from a reaction list generated by one or many outputs of simulation.py or processing.py, not from the LAMMPS dump/bond files directly. Counting the carbons and hydrogens in your SMILES, the atom balance seems fine. I guess that openbabel messes up the implicit hydrogens in one of the molecule SMILES (related to the cis/trans error?). In the final rate computation, this is no issue, only the molecular...
Hi Jingyi Yu, Thanks for your appreciation. The openbabel error comes up in a function that tries to prepare a 2D molecule representation for plotting. https://openbabel.org/dev-api/group__stereo.shtml#ga182a53150e1793ac1ec14958afb05f17 According to the openbabel documentation, the error is a rare case. So far I am not sure how this is caused or how to avoid it. You can try and switch off molecule pictures by leaving out the '-dp' option. Best, Felix
Hi Felix, Thank you very much for your reply and suggestions! The error of segmentation fault has been solved by reinstallation of CTY. However, I still have no idea about how to deal with the output file of more complicated system, like C/H/O/Ni catalytic pyrolysis system that I mentioned before. Because the reaxff method has a very good prospect in this field, it is hoped that there will be some tools that can help researchers analyze data of complex systems. At present, I have no problem using...
Dear Felix, Thanks for your effort in this amazing software. I have two problems with the software and would like to ask you for advice. I was compiling lammps with python that never worked, so I used lammps to generate the required input files dump 5 all custom 100 2500k_dump2.reac id type x y z vx vy vz fix 11 all reax/c/bonds 100 2500bonds2.tatb Then I had my first problem. When I use the command python master.py . -reac 2500k_dump2.reac to analyze the reac file, it prompts me with this: Traceback...
Dear Felix, Thanks for your effort in this amazing software. I have two problems with the software and would like to ask you for advice. I was compiling lammps with python that never worked, so I used lammps to generate the required input files dump 5 all custom 100 2500k_dump2.reac id type x y z vx vy vz fix 11 all reax/c/bonds 100 2500bonds3.tatb Then I had my first problem. When I use the command python master.py . -reac 2500k_5k_dump2.reac to analyze the reac file, it prompts me with this: Traceback...
Dear Felix, Thanks for your effort in this amazing software. I have two problems with the software and would like to ask you for advice. I was compiling lammps with python that never worked, so I used lammps to generate the required input files dump 5 all custom 100 2500k_dump2.reac id type x y z vx vy vz fix 11 all reax/c/bonds 100 2500bonds3.tatb Then I had my first problem. When I use the command python master.py . -reac 2500k_5k_dump2.reac to analyze the reac file, it prompts me with this: Traceback...
Dear Felix, Thanks for your effort in this amazing software. I have two problems with the software and would like to ask you for advice. I was compiling lammps with python that never worked, so I used lammps to generate the required input files dump 5 all custom 100 2500k_dump2.reac id type x y z vx vy vz fix 11 all reax/c/bonds 100 2500bonds3.tatb Then I had my first problem. When I use the command python master.py . -reac 2500k_5k_dump2.reac to analyze the reac file, it prompts me with this: Traceback...
Dear Felix, Thanks for your effort in this amazing software. I have two problems with the software and would like to ask you for advice. I was compiling lammps with python that never worked, so I used lammps to generate the required input files (dump 5 all custom 100 2500k_dump2.reac id type x y z vx vy vz fix 11 all reax/c/bonds 100 2500bonds3.tatb). Then I had my first problem. When I use the command (python master.py . -reac 2500k_5k_dump2.reac) to analyze the reac file, it prompts me with this:...
Hi Jingyi Yu, as of now CTY can't handle large structures, because it was designed for gas phase reactions. However, we are currently developing the next version with those systems in mind. If you still want to use the data you produced, this workaround might work for you: identify the (reactive) surface atoms of your catalyst, then delete all other catalyst atoms from the bond file (lines that start with those ids). That way, the large structures will look smaller for the CTY analysis. Best, Fe...
Felix, Thanks a lot for your attention! My system is an organic catalytic pyrolysis system containing C, H, O, and Ni atoms. The largest structure may have 500+ atoms, which may indeed exceed the limit. What else can I do in this situation?
Hi Jingyi Yu, What kind of system are you running, and how large are your biggest structures? Openbabel has an upper atom limit when creating SMILES (around 250 I think). Can you provide more information on the input? From the segmentation fault error alone it's hard to tell what went wrong. Thanks, Best, Felix
Hi Felix, Why do I get a "Segmentation fault (core dumped)" error when I run the processing.py file after extending the nickel element? How to solve this problem?
Hi wxg, apparently, CTY had problems creating the smiles codes. Did you get any other errors from openbabel during the CTY run? Best, Felix
Dear Felix I am trying to solve the reaction path problem using this excellent software ChemTraYzer 2.1. By creating a python2 environment in conda and installing openbabel 2.4.0, I solved the error of not being able to read the input file, but immediately after running python processing.py example/bonds. tatb -i 1:6 -i 2:1 -i 3:8 -norec 5 and the output is WORK example/bonds.tatb <temperature> <volume> <timestep> 0:: 0:: 630:: 1000:: 1000:: Is this another error, I didn't find a similar error in...
Dear Felix I am trying to solve the reaction path problem using this excellent software ChemTraYzer 2.1. By creating a python2 environment in conda and installing openbabel 2.4.0, I solved the error of not being able to read the input file, but immediately after running python processing.py example/bonds. tatb -i 1:6 -i 2:1 -i 3:8 -norec 5 and the output is WORK example/bonds.tatb <temperature> <volume> <timestep> 0:: 0:: 630:: 1000:: 1000:: Is this another error, I didn't find a similar error in...
Dear Felix I am trying to solve the reaction path problem using this excellent software ChemTraYzer 2.1. By creating a python2 environment in conda and installing openbabel 2.4.0, I solved the error of not being able to read the input file, but immediately after running python processing.py example/bonds. tatb -i 1:6 -i 2:1 -i 3:8 -norec 5 and the output is WORK example/bonds.tatb <temperature> <volume> <timestep> 0:: 0:: 630:: 1000:: 1000:: Is this another error, I didn't find a similar error in...
Dear Felix I am trying to solve the reaction path problem using this excellent software ChemTraYzer 2.1. By creating a python2 environment in conda and installing openbabel 2.4.0, I solved the error of not being able to read the input file, but immediately after running python processing.py example/bonds. tatb -i 1:6 -i 2:1 -i 3:8 -norec 5 and the output is WORK example/bonds.tatb <temperature> <volume> <timestep> 0:. 0:. 630:. 1000:. 1000:. Is this another error, I didn't find a similar error in...
Thank you for your guidance. I think I have figured out the 3 questions.Thank you again. Best wish to you !
Thank you for your reply. With your help, the problem we encountered has been solved. Thank you for providing such an interesting package!
We are happy to hear that you could tackle the previous problem. Concerning your first question: This refers to the readme file in the example folder. In the in.reac file you find the LAMMPS commands: dump 2 all custom 10 dump.reac id type x y z vx vy vz fix 3 all reax/c/bonds 10 bonds.tatb This lets LAMMPS dump every 10th time step. All of these will be processed by the processing.py if you give -n 0. Concerning your second question: This refers to the recrossing filter. Yes, it will effect the...
My comment to the first question seems lost:
Concerning your second question: This refers to the recrossing filter. Yes, it will effect the calculation results. Due to molecules heavily vibrating within MD simulations with large thermal energies, bond order thresholds may be crossed a lot of times in the course of a reactive event and even in the course of a non-reactive collision. Registering all of these bond order changes as reactions will grossly overestimate rate constants and also add reactions to your list that actually didn't really...
We are happy to hear that you could tackle your previous request already. Concerning your first question: You are referring to the example that comes with CTY 2.0. Therein, each 10th frame is dumped, cf. in.reac for LAMMPS simulation: dump 2 all custom 10 dump.reac id type x y z vx vy vz fix 3 all reax/c/bonds 10 bonds.tatb All of these timesteps (ie. each 10th of the simulation) will be processed by processing.py when you specify -n 0
Thank you for contacting us and sharing your interesting application. If your version corresponds to 2.0 from the sourceforge download site, the issue should be in the “processing.py” file. Therein, lines 154 and 155 contain dictionaries that assign to element numbers the corresponding valencies. In the version from sourceforge, these do contain values for element number 9 (flourine): self.Val = {1: 1, 2: 0, 6: 4, 7: 5, 8: 2, 9: 1, 10: 0, 16: 6, 17: 1, 18: 0} self.Cor = {1: 1, 2: 0, 6: 4, 7: 3, 8:...
Dear Felix, Thank you for providing us with such useful software! The "add element" problem we encountered before has been solved. I have three questions for you. 1) I don't quite understand the statement "python processing.py bonds.tatb -n 0 -i 1:6 -i 2:1 -i 3:8 -norec 100" -n I don't quite understand, the readme file explains "ALL timesteps which have been written to 'bonds.tatb" Does this timestep refer to the timestep recorded in the bond.tatb file or the timestep set by the in.reax file,(0.1fs)...
Hello Felix Scgmalz, Thank you for providing such useful software. I have encountered the following problems while using it. I am using ChemTraYzer_2.0 version. My research system includes elemental fluorine. In the data file, #1 is carbon, #2 is oxygen, #3 is fluorine, and #4 is hydrogen. The error is reported as follows. ERROR: some elements are not supported by the internal valence list. Please extend the list of supported elements by adding to Processing.Val I'm not quite sure how to add the...
Hi Felix, Thank you for your help. I deleted the call command in the code. Although there are some problems with the running interface, the result looks good. Now I have another problem. I run the process module to process my file, but it has an error. The error code is as follows: Processing files bonds.reaxff reading all steps, staring at timestep 0, using 10000 bytes memory, a static cutoff of 0.5, considering 100 steps for recrossing and reading each 1th step of connectivity. Identifying 1: 8,...
Thank you for your help. I deleted the call command in the code. Although there are some problems with the running interface, the result looks good. Now I have another problem. I run the process module to process my file, but it has an error. The error code is as follows: Processing files bonds.reaxff reading all steps, staring at timestep 0, using 10000 bytes memory, a static cutoff of 0.5, considering 100 steps for recrossing and reading each 1th step of connectivity. Identifying 1: 8, 2: 14, 3:...
Hi Gaohang, The error seems to come up while creating a folder. What name did you choose for your files (the "-main" option)? The folder will contain this name and some characters are not allowed (e.g. "<>\ / |"). If that seems correct, write permissions might be the problem here. Best, Felix
Hi Jingyi Yu, it just means that the reverse reaction occured. Reverse in regard to what is printed in the third and fourth line. Best, Felix
Hello I have some trouble about processpy. ... list of species indices generated ... list of reaction indices generated Traceback (most recent call last): File "analyzing.py", line 1012, in <module> anly.depictMolecules(Resize=resize) File "analyzing.py", line 644, in depictMolecules call(['mkdir',folder]) File "C:\Python27\lib\subprocess.py", line 172, in call return Popen(popenargs, *kwargs).wait() File "C:\Python27\lib\subprocess.py", line 394, in init errread, errwrite) File "C:\Python27\lib\subprocess.py",...
Hi Felix, I have noticed that the event counts of few reactions in the "reac.reac.tab" file shows "-1". So what does the negative value mean? Is there a problem with my input file?
Hi, Felix, I used CTY to simulate the reaction of Al spherical particle (D=3 nm, 700 atoms) and ethanol. As you said, it's too complex to analyze. Thereby, I downscaled the simulation system, turned the diameter of Al to 1 nm and it worked. CTY helps me to figure out the reaction mechanisms. Thank you for your reply.
Hi Felix, When I use CTY to analyzer it, my command is like, python2 analyzing.py bonds5-1200.reaxc.reac -main bonds5-1200 -p CCCCCCCC/C=C/CCC[CH]CC[O]:C=O,CCCCCCCCC=CCCCC=C error: Traceback (most recent call last): File "analyzing.py", line 1030, in <module> if plot: anly.drawProfile(Plot=plot, Timestep=timestep) File "analyzing.py", line 484, in drawProfile ax.append(plt.subplot2grid((nsub,msub),(i%nsub,i//nsub),colspan=1,rowspan=1)) File "/home/zxs/.local/lib/python2.7/site-packages/matplotlib/pyplot.py",...
Hello Xiao, ChemTraYzer relies on connectivity changes in the trajectory. So, it's not enough to just input XYZ. However, we are working on a new version which will include a basic bond guessing algorithm for exactly this case. The colon ":" is our choice of separating SMILES from one another, because this character doesn't appear in the SMILES generated by openbabel. So, "O=O:C[C]" are two species, and "C=C1OO1" is one (e.g. see https://molview.org/?q=C=C1OO1). Hope that helps, Kind regards, Fe...
Hello, Thank you very much for your reply! The previous problems have been solved. Now I have a new problem and would like to ask you for some advice. The file with the .reac extension obtained from the processing.py file has information about reaction species. For example, there are species with ":" symbols such as "O=O:C[C]", and species with "C=C1OO1", what do they mean? Thanks again for your reply! Best regards, Xiao
Hi, Your first question may be related to the dir name of example file. Check it carefully (examples not example). Or you can try it with your own file. If it still happens, modify everything on you linux computer to be the same version mentioned on the website. As for your second question, I dont think it can be done without pre-processing. You can also ask the developers. Good luck!
Hello, I have two questions. First, I get an error when I use the command 'python processing.py example/bonds.tatb -i 1:6 -i 2:1 -i 3:8 -norec 5', and the error is as follows: attempt to read from example/bonds.tatb failed. Please check whether file is broken or does not exist. File will be ignored ... I have checked the file 'bonds.tatb', and I feel nothing wrong with it. I've also tried other bonds files that I've calculated myself, and I get this error message too. Second, is it possible to use...
Dear Afsaneh, apparently this is an openbabel issue when reading/converting SMILES, and I don't know if they have fixed it: https://sourceforge.net/p/openbabel/bugs/625/ It could mean that some SMILES of more complex molecules than in our example are not calculated correctly. The analyzing part computes rate constants for reactions, which is not affected by incorrect SMILES. But to be sure, check your CTY results to see if you find the molecules you expected. If two different species got the same...
Dear Zhao Xiao, please use openbabel version 2. The warnings and errors come from version 3.x of openbabel, in which they changed some names, e.g. setBO to setBondOrder: https://openbabel.org/dev-api/deprecated.shtml Or you change the source code of CTY, then this might help: https://open-babel.readthedocs.io/en/latest/UseTheLibrary/migration.html Best, Felix
Hi Dear Developers, I am trying to use your helpful code for processing and analyzing my bond-order results form lammps. I could run the "processing.py" for my "Eqbonds.reaxc" file and the "reac" file was generated, However in the next step during running "analyzing.py" I get the following warning several times: Open Babel Warning in OpenBabel::OBSmilesParser::InsertTetrahedralRef Warning: Overwriting previously set reference id. I could run both steps for the examples you provided, and there was...
I am trying to use the CTY for the first time, when I am running it for the example file "bonds.tatb" it gives me the following error. I would appreciate it if you could please help me with that: Reading files ... !----------------------------------------------------------------------! ! Bond order files without work data ! !----------------------------------------------------------------------! bonds.tatb Processing files ... bonds.tatb reading all steps, staring at timestep 0, using 10000 bytes...
Hi Tim, CTY scans through the LAMMPS/ReaxFF bond order file until the start time comes up, that can take some time. You can try deleting the part in the file from time steps 0 - 1e4 manually, and omit the start flag. Best, Felix
Hi chengyx, I'm guessing you are simulating a aluminum slab, which is not recommended, because the current version of CTY is developed for gas phase reactions only. How this creates the error, I can only guess: In this step, CTY computes and sums up the reactant concentrations for a specific reaction to calculate a rate constant (see more at https://doi.org/10.1021/acs.jctc.7b00524 Eq.3). According to a test on stackoverflow, this error comes up after numbers get larger than 170 factorial. So, there...
Hi Felix, The attatched file is my output from reaxff run. When I use CTY to analyzer it, my command is like, python2 processing.py H2O2+Ag/reaxff_out.bonds -i 1:1 -i 2:8 -i 3:47 -norec 5 I already added ".Val" and ".Cor" for silver in processing.py. And I got the following error, Processing files ... H2O2+Ag/reaxff_out.bonds reading all steps, staring at timestep 0, using 10000 bytes memory, a static cutoff of 0.5, considering 5 steps for recrossing and reading each 1th step of connectivity. Identifying...
Hello, I use this script to analysis the reactions in Al/C/H/O system. I have add Var 13:3, and Cor 13:6 in processing.py. I met a mistake after python analyzing.py 2500K.reac.reac -main reac -dp 0.1 -gen id , pointing out that OverflowError: long int too large to convert to float. So how can I solve this problem? Thanks.
Hi Felix, When I try to run CTY with -start flag (1e04), it is taking very long time to begin. Is there anyway to accelerate this time such that it will start running from the specified timestep immediately? Thanks.
Hi Felix, When I try to run CTY with -start flag (1e04), it is taking very long time to begin. Is there anyway to accelerate this time such that it will start running from the specified timestep immediately?
Hi, we are refactoring ChemTraYzer at the moment, making it compatible with python3 and more MD codes. We plan to release a first version this year. Best, Felix
Hi Felix, I am having troubles with python3 to use this fancy tool. And it really feels painful to retrieve everything on my ubuntu 22.04 back to python2 compatible. So, will you release a python3 version of ChemTraYzer recently? Thanks.
Dear Felix, Thank you so much for your elaborate answer! I have followed your medium answer by changing the Lammps subroutine, such that it takes different bond orders for different bonds. I will try to add the modifications to the CTY as you suggested. Thank you for adding this aspect in the list. I have one more query related to 'noreac' and 'skip' flags which is not clear for me with the description given in the code. I have collected the data at every 10 steps with 0.1fs as the time step. In...
Dear Jiuke, You can install Python2 environment in Anaconda and install all the software necessary for CTY. It worked for me! Best regards, Raj
Hi Raj, The short answer is no, unfortunately. But I'll put in on the list for our code refactoring in January. The medium answer would be to use a ReaxFF parameterization where the bond orders behave better and all atom combinations are definitely unbonded below 0.5 or so. The long answer is that I looked at the code and seems a quite some of it would need to be changed to implement that. However if you really need it, you could add some code that takes the elements into account, when reading the...
Hello Stratos, first, apologies for the late reply. Second, thanks for using ChemTraYzer and finding issues like this! In Python the recursion limit is 1000 by default, but one can change it to higher numbers: sys.setrecursionlimit(3000) One source I found claimed 10^6 is reasonable. For your case, 3e3 is enough I guess. We'll change that in the next version. For now, you need to add the line above to processing.py (e.g. after the imports). Thanks for the remark and best wishes, Felix
Dear Felix, I am performing reactive molecular dynamics of H2/O2 system. I am doing post-processing using CTY with bond-order cutoff 0.3. Can I use different bond order cutoffs for different bonds O-H, O-O etc.? I am using bonds file generated using LAMMPS. For LAMMPS simulations I have used bond order cutoff as 0.3 in control file. So, Can I just mention different bond order cutoffs in CTY will work if there is a way to do it? If not, how can I give multiple bond order cutoff values in LAMMPS and...
Dear Felix, I am performing reactive molecular dynamics of H2/O2 system. I am doing post-processing using CTY with bond-order cutoff 0.3. Can I use different bond order cutoffs for different bonds O-H, O-O etc.? I am using bonds file generated using LAMMPS. For LAMMPS simulations I have used bond order cutoff as 0.3 in control file. So, Can I just mention different bond order cutoffs in CTY will work if there is a way to do it? If not, how can I give multiple bond order cutoff values in LAMMPS and...
Dear Felix, Amazing software; I have already used CTY extensively. I am having an issue when I run the processing script for a large molecule (number of atoms > 2000). Specifically, I am getting the error "RuntimeError: maximum recursion depth exceeded in cmp" coming from function "setMolIDRecursive". Is there any solution to this issue? Thank you for your time in advance. Kind regards, Stratos
Dear Jiuke, thanks! We plan to release a python3 version of the code in January. Regarding your error, I assume the file exists. The warning you got is then likely printed, because we used the "file" constructor to open the file, which is not there anymore in python 3. Best, Felix
This is a software written in python2, this error is caused by incompatibility between python2 and python3.
Dear Yi Wang, great. I believe that "convert" is a standard unix program, but I might be wrong. It's only used to have PNG pictures in the end instead of SVGs, so it can be replaced if it causes problems in the future. Those valence ("Val") and coordination ("Cor") values are used in ChemTraYzer's molecule detection, such that long range interactions between atoms can be filtered out and are not counted as bonded interaction. The valence limits the sum of bond orders an atom can support, and the...
Home
Dear Felix, Thanks for your effort in this amazing software. Following your instructions, I got a same error message as Sam after I converted the python scripts using '2to3' command. Multiple warnings and an error. Should I use python2 instead of python3? Python3 processing.py example/bonds.tatb WARNING attempt to read from bonds.tatb failed.Please check whether the file is broken or does not exist. File will be ignore... ERROR No input file found Kind regards, Jiuke
Dear Felix, Thanks for your effort in this amazing software. Following your instructions, I got a same error message as Sam after I converted the python scripts using '2to3' command. Multiple warnings and an error. Should I use python2 instead of python3? Python3 processing.py example/bonds.tatb WARNING attempt to read from bonds.tatb failed.Please check whether the file is broken or does not exist. File will be ignore... ERROR No input file found
Excellant software! Thank you so much!
Hello Felix, This is really great software. I have downloaded the ChemTraYzer. I have Python 3 in my system. So, I have converted all the codes to Python3 with command '2to3' and manually edited some print commands and tried to run using the command as you suggested 'python processing.py example/bonds.tatb -i 1:6 -i 2:1 -i 3:8 -norec 5' and I am getting same error as Sam mentioned earlier! I am getting warning as "attempt to read from example/bonds.tatb failed. Please check whether file is broken...