Giter VIP home page Giter VIP logo

Comments (11)

k3ro avatar k3ro commented on September 26, 2024 1

I can share the code with you.
I also had a few more questions.
I did send you a E-Mail.
Thanks so far for the really fast responses.

from pygaps.

pauliacomi avatar pauliacomi commented on September 26, 2024

Hi there,

I had recently removed the Quantachrome file reading support as I found that many of their files are exported with odd errors that would not parse correctly.

Could you check if it can be transformed to an AIF using this parser?
adsorptioninformationformat.com/raw2aif

Also, would you be able to share the raw file so that it may help me tune the parser? With more examples of errors I am confident I can tweak it correctly. Of course, only if it does not contain any confidential data etc.

Best,
Paul

from pygaps.

k3ro avatar k3ro commented on September 26, 2024

Thanks for the fast answer!
At first i was a little unsure about which file to upload. But i assume the parser wants the (Raw Data).txt
Strangely my particular file was not accepted.
Unfortunatly i can not send you the file that does not work.
But i found out that in the line for the "Analysis gas:" the name had to many spaces and now it works.
i will try with the .aif thanks.

I know that depending on certain settings the .txt files may vary and have lines inserted here and there.
So maybe that is why it is so complicated to read the files.

Edit: But this .aif file can also not be loaded in python.
The error i get now is:

File ~\Anaconda3\lib\site-packages\pygaps\parsing\aif.py:278 in isotherm_from_aif
comp[1] = comp[1].replace('-1', '')

IndexError: list index out of range

from pygaps.

pauliacomi avatar pauliacomi commented on September 26, 2024

Yes exactly, I don't really know why their files have so many random errors in them, which means it is impossible to have them parsed.

May I ask since you are using a Quantachrome apparatus if it can export in other formats besides txt? Maybe they are easier to use.

Also let me know if I can help with anything else.

from pygaps.

pauliacomi avatar pauliacomi commented on September 26, 2024

@k3ro can you tell me the loading units of the AIF file?

from pygaps.

k3ro avatar k3ro commented on September 26, 2024

I think i can point out a few errors that are very common. Maybe that helps.

One can only export in .txt and .csv.
But these two differ.
The .txt has lots of information like non-ideality factor, mass, comments, void vol, degassing data and so on.
The .csv has only absolut Pressure, P0, Volume @stp and equilibration data.
I think in the .csv no lines are added. But of course not having the mass makes working with that file really tedious.

About the units in the AIF file, it is cc @stp.

Since i always work with .txt and i know the ~ 3 oddities that mess up the layout i will write my own code and just use pointIsotherms.

from pygaps.

pauliacomi avatar pauliacomi commented on September 26, 2024

Yes, it would be ideal if these extra data are kept in the files.
The AIF units should be in an "ideal" format to be read: either "x/y" or "x y^-1". It may help.

I will leave this issue open for now. If you happen to be able to share the resulting parsing code I'd be very grateful.

from pygaps.

pauliacomi avatar pauliacomi commented on September 26, 2024

Hi @k3ro, I've gone back to the quantachrome parser and it should now work well.
It was released in v4.3.0
https://github.com/pauliacomi/pyGAPS/tree/v4.3.0
should be pip/conda installable in a few hours

from pygaps.

k3ro avatar k3ro commented on September 26, 2024

Really nice!
At first it didn't work for me because one has to write "txt-raw" and not what is recommended on the Webside:
https://pygaps.readthedocs.io/en/master/manual/parsing.html#parsing-manual-manufacturer
But because you taught me how to look at definitions i found that out myself!

Apart from that it works as intended i think. It calculates relative pressures with p0 that are individual for each point.
That's good.
But unfortunatly the Quantachrome software creates the raw files without giving the adsorptive name.
It does have "Analysis Gas". But that is not actually the adsorptive but the name of the "folder/collection" of adsorptive parameters. It is like the name of a database entry that contains lots of information.
And these entries are sometimes custom made, so you wouldn't know what to expect.
That is a problem because in my case the python software does not know which crosssectional area to take, since it reads for example: Nitrogen87K.

In my case i will just change it after loading the data with this nice parser.
But unfortunatly i have never used objects.
Does a function exist for changing the adsorptiv?
Like converting the units?
Or can i just change the adsorptive of that object?
And would changing the adsorptive then change the crossectional area of that object?

from pygaps.

pauliacomi avatar pauliacomi commented on September 26, 2024

Whoops, good spot on the documentation I'll have to fix that!

Ok so it would be easy to change the adsorptive, once you loaded the isotherm:

isotherm = pg.isotherm_from....
isotherm.adsorbate = "nitrogen" # or "n2"

This would internally connect it to the correct pygaps adsorbate, with the cross-sectional area etc

from pygaps.

k3ro avatar k3ro commented on September 26, 2024

Sorry for the late response.
changing it like that worked for me, thanks a lot!

from pygaps.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.