[Nek5000-users] pretex error when reading BC from file with no velocity field and passive scalars

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Fri Mar 30 10:49:55 CDT 2018


Dear Neks,

I am constructing a mesh for conjugate heat transfer simulations. My temperature is a passive scalar and I want to add more passive scalars. However, when I am combining fluid-solid rea files with pretex (choosing option 3), I get the following error while reading boundary conditions of solids (only the relevant part is pasted here, I can upload the whole output if necessary):

> Showing only 90 elements of       142912
> input name of new .rea file
> walls_gen
>  Found           0  curve sides.
>  IFLD:           2           3 F T
>   ***** THERMAL BOUNDARY CONDITIONS *****
>   ***** THERMAL BOUNDARY CONDITIONS *****$
>  I      11   0.00000       0.00000       0.00000       0.00000       0.00000
>  I      11   0.00000       0.00000       0.00000       0.00000       0.00000$
>  made it to:       10640           6
> nelin,ifld:     10640         3
> Error reading boundary conditions. Returning.
>  start locglob_lexico:           8      142912     1143296   2.00000009E-03
>  locglob:           1           1     1143296
>  locglob:           2         137     1143296
>  locglob:           3        5287     1143296
>  locglob:           1      153323     1143296
>  locglob:           2      153323     1143296
>  locglob:           3      153323     1143296
>  locglob:           1      153323     1143296
>  locglob:           2      153323     1143296
>  locglob:           3      153323     1143296
>  Performing unique_vertex2 self_chk     1143296
>  done locglob_lexico:    153323    153323   1143296         8
>  Performing makecell self_chk     1143296
> 
>               *** MIDWAY BREAK MENU ***

Note the two lines that end with $, which I think are the indication of the problem. My solid walls have exactly 10640 elements. I think the issue is in the file build.f at line
https://github.com/Nek5000/Nek5000/blob/f0a6dd029cd2116fbfdbb1f6e7bfbfdd1808d86a/tools/prenek/build.f#L1282
which IMHO should be executed outside of the do loop that starts a line before. The header for no fluid BCs should not be read in the do loop, because this field is not processed. The header of currently processed field is read inside imp_bc function at line
https://github.com/Nek5000/Nek5000/blob/f0a6dd029cd2116fbfdbb1f6e7bfbfdd1808d86a/tools/prenek/build.f#L1545
and printed after that. In the output above, these are the four lines with two of them ending with $. The third and fourth of those lines should be 'PASSIVE SCALAR 1  BOUNDARY CONDITIONS', not the boundary condition for the first element itself.

After rotating lines 1282 and 1283 my mesh gets properly constructed. However, I am not aware of other use cases that would require dummy reading inside the loop if the velocity field is not present.

Should I open an issue about this in the github repository or maybe provide a simplified example?

Best regards,
Jure Oder


More information about the Nek5000-users mailing list