keurfonluu / toughio

Pre- and post-processing Python library for TOUGH
Other
59 stars 9 forks source link

TOUGH input file #128

Closed Cocytus-kyon closed 1 year ago

Cocytus-kyon commented 1 year ago

Hello

There is a test that I can run successfully(r2dl1). r2dl1.txt

But when I use toughio to read and write, the output file cannot be executed correctly.

parameters= toughio.read_input("r2dl1")
toughio.write_input("r2dl1_new", parameters)

r2dl1_new.txt

image

Do I miss any details? Can someone help me?

Thank you!

keurfonluu commented 1 year ago

Seems like block CHEMP is missing. Would you mind adding it manually and try the edited file? Thanks!

CHEMP----1----*----2----*----3----*----4----*----5----*----6----*----7----*----8
    0
Cocytus-kyon commented 1 year ago

Hi Thank you for your reply!But adding the block CHEMP is also not feasible.

I found that I replaced the START and PARAM blocks in the new file, left a blank line at the end of the SELEC block. Finally, delete the ELEME and CONNE blocks in the new file, and use the external MESH file. The new file can be executed successfully, but the wrong results will be obtained.

I don't know what caused it.

keurfonluu commented 1 year ago

Which EOS are you using?

Cocytus-kyon commented 1 year ago

"tmvoc"

keurfonluu commented 1 year ago

Hi,

Sorry for the delay. I currently don't have TMVOC installed so I can't properly debug (I am simply checking the discrepancies between your two files).

There is actually an option eos in toughio.read_input and toughio.write_input that are required when dealing with TMVOC as it has several additional entries compared to other EOS (blocks PARAM, INDOM and INCON).

Try:

parameters = toughio.read_input("r2dl1", eos="tmvoc")
toughio.write_input("r2dl1_new", parameters, eos="tmvoc")

Also, it seems that your file has an inactive element called ina which name is not properly parsed (this will be fixed in the next update). Can you manually edit it? (from "ina" to "ina" line 711 of the new input file) as well?

Thanks!

Cocytus-kyon commented 1 year ago

Hi, I am very grateful for your unselfish help.

But even if "eos=tmvoc" is added, the program will get the same output file. TMVOC can't work either. r2dl1_new_tmvoc.txt

About mesh, I can use external MESH files(The block ELEME and CONNE in r2dl1_new_tmvoc will be deleted). Looking forward to your next update.

Thanks!

keurfonluu commented 1 year ago

Hi,

I have identified and fixed the issues, but GitHub Actions is experiencing some networking issues (see https://github.com/actions/runner-images/issues/6894) so I cannot merge the development branch.

You can try to install the current development branch as follows: pip install https://github.com/keurfonluu/toughio/archive/devel.zip

Cocytus-kyon commented 1 year ago

Thank you! It worked. (^▽^)

keurfonluu commented 1 year ago

Great! I've uploaded the update to PyPI. You can install it now via pip:

pip install toughio[full] -U
Cocytus-kyon commented 1 year ago

Hi, I'm here again.

The other file r2dl3 has a similar small problem, I can solve the problem after replacing the block 'PARAM' in the new file(r2dl3_new.txt). I attached the required files below.

r2dl3.txt r2dl3_new.txt MESH.txt GENER.txt

Maybe I can modify the format of the initial file r2dl3?

Thank you!

keurfonluu commented 1 year ago

Thanks, it should be fixed now. Please update again:

pip install toughio[full] -U
Cocytus-kyon commented 1 year ago

Made it, thanks for your help!

keurfonluu commented 1 year ago

Great! Closing this issue then. Please open a new separate issue if you have any other, it's easier for me to track.