|
[Sponsors] |
[solids4Foam] SOLVED: Paraview can't read solids files (duplicate entries with keyword value) |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
November 4, 2019, 04:26 |
SOLVED: Paraview can't read solids files (duplicate entries with keyword value)
|
#1 |
Member
Torsten Schenkel
Join Date: Jan 2014
Posts: 69
Rep Power: 12 |
Hi,
I am in the process of migrating my FSI simulations from the old FSI toolbox to the new solids4foams. I am currently running Using: foam-extend-4.1 (see www.foam-extend.org) Build: 4.1-5832cfe256a5 When I try to run the 3dTube/linearElastic3dTube tutorial case the case runs fine, however, paraview can't read the solid region: ...Error reading line 11260 of /home/acests3/foam/acests3-4.1/run/3dTube/linearElastic3dTube/0.0002/solid/D: Found duplicated entries with keyword value ...Error reading line 8052 of /home/acests3/foam/acests3-4.1/run/3dTube/linearElastic3dTube/0.0002/solid/D_0: Found duplicated entries with keyword value ...Error reading line 44 of /home/acests3/foam/acests3-4.1/run/3dTube/linearElastic3dTube/0.0002/solid/D_0_0: Found duplicated entries with keyword value Paraview is V5.6.0 What am I missing? Best Torsten |
|
November 5, 2019, 15:20 |
|
#2 |
Member
Torsten Schenkel
Join Date: Jan 2014
Posts: 69
Rep Power: 12 |
Update:
There seems to be a problem/bug in foam-extend-4.1 (MPI error in the pressure GAMG solver), which was a showstopper for me, so I reverted back to fe40, and recompiled solids4foam on fe40. This problem does not show up then. So it seems to be caused by a change from fe40 to fe41. Best T |
|
November 7, 2019, 19:29 |
|
#3 | |
Senior Member
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21 |
Quote:
|
||
November 8, 2019, 07:57 |
|
#4 | |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,093
Rep Power: 34 |
Quote:
I have checked this on my system (case run on Ubuntu 16.04 LTS with foam-extend-4.1, build 4.1-e01e16c94382, and the latest master branch of solids4Foam, with ParaView 5.6.0 on macOS) but am not getting an error. One solution is to use foam-extend-4.0. To try to determine where the problem is, I suggest you move all of the solid fields out of the time sub-directory and see if you can now read the solid region in ParaView. If this works, then move back in the fields one-by-one until you find the one that ParaView complains about. If you find the problem, hopefully, it may become clear how to fix it. Philip |
||
November 8, 2019, 13:54 |
|
#5 |
Member
Torsten Schenkel
Join Date: Jan 2014
Posts: 69
Rep Power: 12 |
Hi Philip
I have not tested again with fe41 after upgrading to the master branch of solids4foam. Will try to do that next week. The fields that are causing the problems are the D fields (D, D_0, D_0_0). If I disable them (unchecking them in the dialog in paraview, no need to move the files), the case reads fine and I can use the pointD field to warp the mesh to match the mesh motion of the fluid region. I'll have to double check the MPI bug in fe41 as well, and open another thread on that (does your fe41 work in parallel with GAMG for p?). Which compiler is recommended for fe41 and solids4foam? I compiled both with gcc 4.8.5 on CentOS 7.6 for foam-extend 4.0, but fe41 doesn't seem to like gcc 4.8.5, so I used the gcc7 toolchain for that. |
|
November 21, 2019, 08:18 |
|
#6 |
Member
Torsten Schenkel
Join Date: Jan 2014
Posts: 69
Rep Power: 12 |
This has been resolved.
After a bugfix update in foam-extend 4.1 I - pulled the current sources for both foam-extend-4.1 and solids4Foam-release - recompiled both with the gcc7 toolchain on CentOS (Ubuntu 18.04 still compiling) and the testcase is working fine now. How do I change the thread title to include "SOLVED"? |
|
November 21, 2019, 08:27 |
|
#7 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,093
Rep Power: 34 |
Great.
Done. |
|
March 20, 2020, 19:43 |
|
#8 | |
Senior Member
|
Quote:
This bug was fixed in OpenFOAM foundation version stated at https://bugs.openfoam.org/view.php?id=2737. I wonder if it is fixed in foam-extend. |
||
March 20, 2020, 20:03 |
|
#9 |
Senior Member
|
It seems the values on "solidTraction boundary" are written twice.
Here is the output of linearElastic3dTube/0.0001/solid/D: Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | foam-extend: Open Source CFD | | \\ / O peration | Version: 4.1 | | \\ / A nd | Web: http://www.foam-extend.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volVectorField; location "0.0001"; object D; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 0 0 0 0 0]; internalField nonuniform List<vector> 6400 ( ; boundaryField { inlet { type fixedDisplacement; value uniform (0 0 0); } outlet { type fixedDisplacement; value uniform (0 0 0); } inner-wall { type solidTraction; gradient nonuniform List<vector> 1600 ( First time ) ; pressure uniform 0; secondOrder false; limitCoeff 1; relaxationFactor 1; value nonuniform List<vector> 1600 ( Second time! ) ; } symmetry-x { type solidSymmetry; patchType symmetryPlane; secondOrder false; value nonuniform List<vector> 320 ( ) ; } symmetry-y { type solidSymmetry; patchType symmetryPlane; secondOrder false; value nonuniform List<vector> 320 ( ) ; } } // ************************************************************************* // |
|
March 20, 2020, 20:14 |
|
#10 |
Senior Member
|
fvPatchVectorField::write(os) does the work.
Code:
void solidTractionFvPatchVectorField::write(Ostream& os) const { //fixedGradientFvPatchVectorField::write(os); fvPatchVectorField::write(os); if (tractionSeries_.size()) { os.writeKeyword("tractionSeries") << nl; os << token::BEGIN_BLOCK << nl; tractionSeries_.write(os); os << token::END_BLOCK << nl; } else { #ifdef OPENFOAMFOUNDATION writeEntry(os, "traction", traction_); #else traction_.writeEntry("traction", os); #endif } if (pressureSeries_.size()) { os.writeKeyword("pressureSeries") << nl; os << token::BEGIN_BLOCK << nl; pressureSeries_.write(os); os << token::END_BLOCK << nl; } else { #ifdef OPENFOAMFOUNDATION writeEntry(os, "pressure", pressure_); #else pressure_.writeEntry("pressure", os); #endif } os.writeKeyword("secondOrder") << secondOrder_ << token::END_STATEMENT << nl; os.writeKeyword("limitCoeff") << limitCoeff_ << token::END_STATEMENT << nl; os.writeKeyword("relaxationFactor") << relaxFac_ << token::END_STATEMENT << nl; #ifdef OPENFOAMFOUNDATION writeEntry(os, "value", *this); #else writeEntry("value", os); #endif } Last edited by Michael@UW; March 21, 2020 at 00:52. |
|
March 23, 2020, 05:48 |
|
#12 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,093
Rep Power: 34 |
Thanks Michael@UW,
I will push this change to the development branch. I guess this is a result of something changing in foam-extend-4.1. Philip |
|
Tags |
solids4foam |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[OpenFOAM] Paraview: .foam and .OpenFOAM files support | redbullah | ParaView | 2 | September 4, 2019 07:49 |
How can i read mesh files made with ICEM? I want use them for my own code | zmester | ANSYS Meshing & Geometry | 9 | October 11, 2009 08:18 |
Phase locked average in run time | panara | OpenFOAM | 2 | February 20, 2008 15:37 |
[General] Iblanked Plot3d files in Paraview | Robert | ParaView | 0 | September 27, 2006 16:45 |
Results saving in CFD | hawk | Main CFD Forum | 16 | July 21, 2005 21:51 |