Author Topic: QuoFEM fails to run Postproc correctly  (Read 2983 times)

rsam1993

  • Newbie
  • *
  • Posts: 21
    • View Profile
QuoFEM fails to run Postproc correctly
« on: July 04, 2023, 06:10:50 PM »
Hello all,

I am getting this error when I use QuoFEM for my Opensees model subjected to a ground motion input to do forward propagation analysis.

"Error(s) encountered reading results file workdir.32\results.out for Evaluation 32:-- Expected 1 function value(s) but found 0."

I checked the workdir folders and the analysis converges to the end for all the samples, but for some reason, QueFEM is unable to generate the results.out correctly and the file is empty. I generated the postproc.tcl myself and it only needs two input files from Opensees which are correctly generated and available in workdir folder. If I run the postproc manually it gives me the correct results.out file with no issue, so I am confused why I am getting this error. I checked the opt.out file to and I saw the following error when the postproc file is running by QuoFEM:

missing operand at _@_
in expression "(0.498816-_@_)"
    (parsing expression "(0.498816-)")
    invoked from within
"expr ($TopDisp($i)-$BaseDisp($i))"
    ("for" body line 2)
    invoked from within
"for {set i 1} {$i <= [expr ($m-2)]} {incr i} {
    set RelativeDisp [expr ($TopDisp($i)-$BaseDisp($i))]
   set RelativeDisp [expr abs($RelativeDisp)]
   i..."
    (file "TowerEQPostProc.tcl" line 24)
    invoked from within
"source TowerEQPostProc.tcl"
    (file "SimCenterInput.tcl" line 7)

Since both of the required input files for this postproc are available in the directory and both have 5000 data points, I am not sure why there is an error in reading them. Surprisingly, if I use other ground motions sometimes I get the same error and sometimes it works perfectly and gives me the results. To me, it seems there is an issue by QuoFEM when it calls the postproc. In other words, it seems the postproc is called before the Opensees analysis is over and as a result, the data is not available. However, this is only my guess and I might be wrong. Would you please help me to find the source of this problem and fix it?

Thank you so much,

 

Sang-ri

  • Global Moderator
  • Jr. Member
  • *****
  • Posts: 61
    • View Profile
Re: QuoFEM fails to run Postproc correctly
« Reply #1 on: July 05, 2023, 03:42:06 AM »
Hi,

Thanks much for the very detailed description of the issue. It helps us a lot!

If the postproc script is being called before the output files are fully written, one possible solution to prevent this is to add "remove recorders" at the end of the main script.

Typically, OpenSees does not finish writing files until the process reaches the end of the "script". When quoFEM runs, the script it calls is "SimCenterInput.tcl" [This can be found inside working directies] that includes both main and postprocessing scripts. To enforce OpenSees to finalize writing before running the postprocessing script, please try adding the command "remove recorders" at the end of the main script.

Please let us if this works.

Best,
Sang-ri

rsam1993

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: QuoFEM fails to run Postproc correctly
« Reply #2 on: July 05, 2023, 03:42:45 PM »
Thank you Sang-ri,

I hope this does the trick. Let me try it today and I will keep you posted soon.

rsam1993

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: QuoFEM fails to run Postproc correctly
« Reply #3 on: July 05, 2023, 06:07:29 PM »
The trick worked and I do not get the error anymore.

Thank you so much for your help. I have another question about the parallel processing feature of QuoFEM, but I am going to open a new topic for it.

Sang-ri

  • Global Moderator
  • Jr. Member
  • *****
  • Posts: 61
    • View Profile
Re: QuoFEM fails to run Postproc correctly
« Reply #4 on: July 05, 2023, 06:50:46 PM »
Awesome, thanks for the update! We will get back to your new question soon