finite area method
Hi all.
I am trying to use the finite area method. I need to calculate the divergence of a boundary field q_b. I am trying to initialize my areaVectorField without success: Code:
Code:
q_bed.internalField() = volSurfaceMapping.mapToSurface(q_b.boundaryField()); Code:
volScalarField dh_dt = fam::div ( q_bed.boundaryField() ) Thanks |
What kind of errors are being thrown? This would help get to the bottom of your issues.
|
Ok.
I am trying to declare volSurfaceMupping: Code:
volSurfaceMapping vsm(aMesh); Code:
undefined reference to `Foam::faMesh::faMesh(Foam::polyMesh const&)' |
It depends on where your error is located/comes from.
But it seems as if you are mixing aMesh and faMesh? Give it the same "name" everywhere. Also, did you include the necessary libraries in your options file (Make folder)? |
Hi Guys,
the problem starts with your initialization: Code:
areaVectorField q_bed Code:
areaVectorField q_bed The second more important point is, that faMeshes are not directly connected to the objectRegistry, because in contrary to fvMesh it is not derived from polyMesh but from GeoMesh<polyMesh>. The first is derived from the objectRegistry the latter not. Because of that you need to use Code:
areaVectorField q_bed Best Kathrin |
Thanks Kathrin,
Quote:
Quote:
Code:
areaVectorField q_bed Arne |
Sorry,
a () was missing aMesh.thisDB(); works for me! And now the data is registered where it belongs to: the faMesh. Otherwise you register it to the fvMesh, what is not wrong, but imagine you come to a point, where there is no fvMesh present. That what has happened to me. Best Kathrin PS: I will edit the previous snippet |
Ok, it compiles. As I guess you already had some experience with faMeshes and the objectRegistry, could you tell me a bit more about differences of using "mesh" and "aMesh.thisDb()" in IOobject? This would be great.
Arne Edit: Ok. In the meantime you already answered my question ;-) Thanks. That sounds reasonable. |
Which are the library needed for this?
I added: Code:
#include "faCFD.H" |
You would also need:
Code:
#include "faMesh.H" Niels |
Thanks
I added that one as well. still, I can see that the error appear when I introduce Code:
#include "createFaMesh.H" Code:
pimpleMyDyMFoam.C:(.text+0x5346): undefined reference to `Foam::faMesh::faMesh(Foam::polyMesh const&)' |
Have you remembered to add the necessary lines in Make/options for you to work with FAM?
|
Hi Nils,
i think the latter is more important, since the faMesh.H is already introduced by faCFD.H @lulo By the way is this your first error in the line? |
Thanks to all of you!
I have compiled it correctly. Now I have solved the exner equation: Code:
areaVectorField q_bed I could see that there are some interpolation method in src/finiteArea/interpolation. I think I should use edgeInterpolation and I tried: Code:
edgeInterpolation interpolateE(aMesh); |
Quote:
I want to use FAM to solve Exner equation. my of version is foam-extend-3.1. Before the FAM used, everything is ok. However, as the q_bed of volMesh mapping to areaMesh and faCFD.H creatfamesh.H famesh.H are introduce, some errors occured, as below: Code:
In file included from /home/administrator/foam/foam-extend-3.1/src/foam/lnInclude/MeshObject.H:39:0, the options file is Code:
EXE_INC = \ Fan Fei |
Hi everyone:
This problem have solved. The # include "faCFD.H" sholud be as a global variable, add it before the main program. Best regards Fan Fei |
1 Attachment(s)
Quote:
I have a question about the faMesh and dynamicMesh. in openfoam extend 3.1. there are two solvers use famesh and dynamicMesh. The location is tutorials/surfaceTracking/interTrackFoam and bubbleInlerTrackFoam. as below picture. however the code of interTrackFoam is: ----------------------------------- Quote:
Best regards Fan fei |
Hi lulo,
Sorry to trouble you. Do you have slove your problem? Now I meet a problem when i calculated the bed load transport rate (qbi=q0*τ/τi - C*|q0|dη/dxi) component in the i direction by using FE3.2 famesh, i found the result of dη/dxi in two sides in y direction (two sides patch: symmetryPlane) is wrong. Which I explained here: The problem of bed load transport rate based on FE3.2-famesh. Do you meet it or how to slove it? Thanks. Best,:) LXJ |
Dear Niels,
I want to use the sand sliding method similar to you in "Mass conservation in computational morphodynamics: uniform sediment and infinite availability". Could you please let me know how can I have access to quadrilaterals to form the dual mesh. Many thanks in advance, Amir |
Hi Amir,
You will have to construct it from the faMesh. The dual mesh does not exist in the released version. Kind regards Niels |
All times are GMT -4. The time now is 03:20. |