PyCORN
PyCORN copied to clipboard
Future of PyCORN
Dear Yasar,
I'm one of the developers of the open source chromatography simulator CADET (https://cadet.github.io/).
On our forum, one of our users asked about tools to automatically read data from Unicorn (https://forum.cadet-web.de/t/extracting-data-from-unicorn-files) and another user pointed us towards your tool, PyCORN.
First of all, from one open source project to another, let me thank you for providing this tool for everyone to use freely. It's highly appreciated!
We did, however, notice that the development of PyCORN seems to have become dormant and Scott informed us that you stopped working on the project. So we were wondering about your future plans with the software. Do you plan on maintaining it further? If not, would you generally be open to us taking over the project?
Obviously, it's hard to say now how exactly that would look like since there are many factors to consider but there are several options that we could generally envision.
First, we could simply contribute to your repo. Secondly, we could fork and continue from where you left off. Or Thirdly, we could also consider a full rewrite (inspired by your software).
So at this point, we just wanted to reach out to you to get in touch and we would be grateful for your feedback and thoughts. We're also always happy to discuss these things in a call.
Best wishes
Johannes
Hi,
thanks for the comments. Yes unfortunately I don't really have time to maintain it, fix bugs, add new features etc
I think ideally it would be best if you could fork it under a new name (uncreatively pycorn-ng for example). I can put up a link to it, forwarding people to it.
You're also free to completely rewrite it. The code is not the best, so see what works best for you (fork or rewrite). I can help if there are questions regarding python code and/or file formats of the Unicorn software (RES & ZIP).
I also wrote some code (not published I think) that dealt with FPLC Director software that you may want to integrate once you're into it.
I've quickly went through the link, some comments:
- pycorn can read res and newer ZIP files
- the ZIP files are a bit nonstandard and didn't work straight out of the box within python back then (see https://bugs.python.org/issue24621 ), 7zip has no problems extracting them. pycorn creates an in-memory "patched" zip file so it works
- the decimals for pH (for example), this is something I never was able to figure out, what multiplier (or divisor) is needed to get the "true" value. That seemed to be different between each machine type (AKTA Prime, AKTA Purifier etc.). This not only applies to pH but also others, I just used what made sense with machines I had available but I couldn't really find it within the raw data.
- as someone commented, I've documented the RES fileformat, so a reimplementation wouldn't take too much effort if you decide to go this route. The newer files are relatively easy to figure out, just ZIP file with XML data.
- regarding the time base of the pump. Most of the people I worked with (biologists) used these machines and the corresponding software purely in a "volume based" mode. So for them it made no difference if the pump was stopped for an hour in-between, the volume values always come out correctly. But if you need to work in "time based" then yes you would have to sort it out. The original UNICORN software can switch seamlessly between time and volume base.
Best, Yasar
Hey Yasar,
thanks for your quick response and your thoughts on the topic.
We will discuss this internally over the next weeks. We have a new PostDoc starting in May so this might be a good first topic for him to manage.
Greetings
Jo
Btw, where are you located now?
I'm currently in Mainz
Hi Johannes,
is there new information on whether it will be implemented into CADET? how fast can this project theoretically be realized? I'd love to use it, however, I only have less then one year left for my phD and therefore would like to know whether this could still be relevant for my phD or not.
Thank you in advance.
Best,
Gero
No need to wait for an update, you can still use pyCORN now. It installs and works fine in a conda environment when following the instructions from this repository (at least last time I tried).
Hey, sorry for the long silence. We're still discussing internally. Our "new guy" had to focus on some other, more urgent things first. But we're generally still considering. As @Guillawme mentioned, for now it's still possible to use it.
Thanks for your answers to the both of you. The reason why i cannot use the current version is because of the Äkta start problem (issue #24). There seems to be a new data format (even though it is still a .res data), which is not possible to read with the current pyCORN application. For the sample data uploaded here, my pyCORN installation worked fine. I forgot to mention that, sorry ^^"
Dear Dr. Schmoelder @schmoelder , I came across this thread while trying to extract data from UNICORN and do some modeling with CADET. Thanks to @pyahmed Yasar's well-documented code, I am able to get all the data from the UNICORN 6/7 zip files. I wonder what's the current progress of integrating pyCorn into CADET? I may look into it if there's no one else working on it.
Best,
Chenguang
Hello,
I've taken the liberty of forking and updating PyCorn here. For now, this is where I'll collect issues and update the code. Edit to clarify, I am the "new guy" in the CADET team.
Thank you very much Ronald-jaepel. I will test it out soon =)