rclab-auth / gidopensees

GiD+OpenSees Interface
http://gidopensees.rclab.civil.auth.gr
GNU General Public License v3.0
94 stars 42 forks source link

Invoke OpenSeesPost.exe ISSUE #201

Open MekPAME opened 5 months ago

MekPAME commented 5 months ago

Hi GID+OpenSees Developers! @vpapanik @iammix

I am trying to postprocess a model which I've created with GID+OpenSees but then I did the analysis by myself on OpenSees.exe (because I've built a new release with new features). Now, using the command prompt in order to invoke OpenSeesPost.exe I get this issue: "Exception EConvertError in module OpenSeesPost.exe at 0002132E. '-o' is not a valid integer value." When I run the following script:

cd C:\Program Files\GiD\GiD 16.0.7\problemtypes\OpenSees.gid\exe ##this is the directory containing OpenSeesPost.exe

OpenSeesPost.exe -f input_file1.out input_file2.out ... -o projectname.post.res -fmt GiD ##command bar to create the .post.res file

Could you show me the way to properly get the .post.res file please?

Warm regards!

iammix commented 5 months ago

Hi there, a straightforward remedy is to substitute the OpenSees.exe file with your customized build. You can locate the OpenSees.exe file path at ..\Program Files\GiD\GiD 16.0.3\problemtypes\OpenSees.gid\exe\bin. By following this, you'll be able to execute your code using your own OpenSees.exe. Once this is done, the postprocessing functionality will be readily available for your use.

Kind Regards

MekPAME commented 5 months ago

First of all thanks a lot @iammix for your support. I does not work. To explain better my situation let's start since the beginning: 1- I've created the model on GID 2- I've exported the .tcl file and modified it, also adding new elements. So the .msh file is different. 3- I've run the analysis on a different release of OpenSees 4- Now, I read in the customization manual that I should import the .post.msh and .post.res files

So I've to create this 2 files regardless GID and OpenSees. I think is a problem which regards GID developers and not you.

But If you would show me the way how GID+OpenSees writes these files I could also create them externally and then import them directly in GIDPost. OpenSeesPost.exe is this tool I think, but the script I run (the one I've written up) does not work.

iammix commented 5 months ago

The arguments provided for executing the postprocess executable are the following:

OpenSeesPost.exe "problemtype path" "gid project path" "output step"

However, there could be an issue during execution due to modifications you made to the .tcl file. The executable relies on data from the .tcl file. Moreover, the changes of the mesh might cause an error too.

MekPAME commented 4 months ago

@iammix @vpapanik Please, could you share the repository of OpenSeesPost.exe adding the SSPbrick to the avaiable element type? Than I am going to compile that and share with all the community. I'd like to postprocess a model with SSPbrick, but OpenSeesPost.exe has been compiled only for stdBrick I suppose. Indeed I am getting problems also because in my project there are SSPbrick elements and not stdBrick, so it works bad because the postprocess considers 8 points of integration (stdBrick) even though I am using the SSPbrick which has only 1. Therefore the visualization of the results is wrong.

Many thanks in advance.

MekPAME commented 4 months ago

@iammix Please, Could I have an answer? As I said I'd need the project of OpenSeesPost.exe in order to compile it and make it work properly for the SSPbrick elements.

iammix commented 4 months ago

Hello. The corresponding code of the post process is in the path post/OpenSeesPost.dpr.

MekPAME commented 4 months ago

Thanks a lot! @iammix I've already found that, but that's enought to compile? I mean usually the project contains libraries, configuration files, etc. Can I compile also just using the .dpr?

iammix commented 4 months ago

Yes you can compile it. It does not need any dependencies.

MekPAME commented 4 months ago

Alright! @iammix But one moment, I've downloaded the Delphi 11 Community edition and I've compiled a new release (x64 Release version), that I've changed the original OpenSeesPost.exe with the new one in the directory of GiD. I do know why but when I run the option "Postprocess only" that makes OpenSeesPost.exe work, it does not start and it just reads the previous .post.res file. I've also tried to compile without any modifications and still the new .exe it does not start when it is called in GiD.

Do you know maybe why?

Many thanks in advance!

iammix commented 4 months ago

It seems like removing the previous post.res file and ensuring that both the .tcl and .log files share the same name might help resolve the issue. Additionally, make sure that the .tcl file contains the recorders generated from GiD+OpenSees. If the problem persists, I'm afraid I don't have any other suggestions for troubleshooting.

MekPAME commented 4 months ago

Yes, I did. All the names are the same and also the .log file. The problem is in the OpenSeesPost.exe, I've compiled it using Delphi as well, for 32bit release version, there are no warnings or errors. I ask you a deeper investigations, it could be a problem for someone else in the future.

Could you try to compile it and see if it works to you? Which version of Delphi you used to compile the OpenSeesPost.exe that is avaiable?

I mean compiling that .dpr file is question of a minute

@iammix Thank you so much!