The program stops as soon as it starts running without any errors or warnings

Hello, the following phenomenon occurred when I was running the program, and no error or warning was reported when I checked the message. I would like to know whether it was due to the influence of mesh roughness or particle diameter, thank you


cao_co2_tansuanhua_2022-10-04T153718.535142.zip (54.1 KB)

You have posted a screenshot of the very end of the console output. If you scroll up in the console I believe you will see an error message in red.

/mfixsolver: line 3: 19609 Floating point exception(core dumped) env /cao_co2_tansuanhua_2022-10-04T153718.535142":"":${PYTHONPATH:+:$

Note, in the 22.3 version, due out this week, these solver crash messages are better detected and generate error popups so they are harder to miss.

Using gdb to examine the core dump:

mfix-22.2.2:) file core 
core: ELF 64-bit LSB core file, x86-64, version 1 (SYSV), SVR4-style, from '/home/cgw/mambaforge/envs/mfix-22.2.2/bin/python3.10 -m mfixgui.pymfix -s -f /h', real uid: 103, effective uid: 103, real gid: 1000, effective gid: 1000, execfn: '/home/cgw/mambaforge/envs/mfix-22.2.2/bin/python3.10', platform: 'x86_64'

mfix-22.2.2:) gdb /home/cgw/mambaforge/envs/mfix-22.2.2/bin/python3.10 core
GNU gdb (Gentoo 12.1 vanilla) 12.1
...
Core was generated by `/home/cgw/mambaforge/envs/mfix-22.2.2/bin/python3.10 -m mfixgui.pymfix -s -f /h'.
Program terminated with signal SIGFPE, Arithmetic exception.
#0  0x00007fd4b72bb725 in desgrid::iofpos (fpos=-4.8878222745641619e+17)
    at /home/cgw/mambaforge/envs/mfix-22.2.2/share/mfix/src/model/des/desgrid_mod.f:376
376	      iofpos = floor((fpos-dg_xstart)*dg_dxinv) + dg_istart1
[Current thread is 1 (Thread 0x7fd4782e7640 (LWP 19617))]

(gdb) list
371	!  Purpose: Calculate the cell I index containing the given position.  !
372	!......................................................................!
373	      integer function iofpos(fpos)
374	      implicit none
375	      double precision fpos
376	      iofpos = floor((fpos-dg_xstart)*dg_dxinv) + dg_istart1
377	      end function iofpos
378	

(gdb) print fpos
$1 = -4.8878222745641619e+17

(gdb) p dg_xstart
$2 = 0

(gdb) p dg_dxinv
$3 = 2221.7391304347816

(gdb) p dg_istart1
$4 = 2

(gdb) whatis iofpos
type = integer(kind=4) (real(kind=8))

iofpos is defined as an integer function, the value of fpos is too big and the resulting value is too big for a 4-byte integer. I might question why we are using 32 bit ints on 64-bit hardware, but the value of fpos is clearly incorrect and this is an error even if iofpos did not detect the integer overflow.

– Charles

Thank you very much for your reply. I have seen the code of the source file, but I still don’t understand what you mean when you say the result value is too large. I’m really sorry for asking such a basic question. Do you have any specific tutorials or instructions? Where can I find them? Thank you!

Hello, I have run the program again. It is the same as the previous program without any modification, and there is a reminder as shown in the picture. May I ask what is the reason for this? thank you

Sorry about the FLASK_ENV warning. This is coming from one of the libraries used internally by MFiX for communication between display and solver. It is a harmless warning and should not appear any more if you upgrade to the 22.3 version.