View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000580OpenFOAM[All Projects] Bugpublic2012-07-11 09:502012-08-02 09:29
Reportersylvain_aguinaga 
Assigned Toandy 
PrioritynormalSeverityminorReproducibilityrandom
StatusresolvedResolutionfixed 
PlatformLinuxOSUbuntuOS Version10.04
Product Version2.1.x 
Target VersionFixed in Version2.1.x 
Summary0000580: problem in evaluation of face normal in ParticleErosion.C
DescriptionI think there is a problem with the evaluation of face normal in particleErosion.C with command:

 vector nw = p.currentTetIndices().faceTri(mesh).normal();

When I compare the value of nw to the one provided in standardWallInteraction.C with command:

this->patchData(p, pp, trackFraction, tetIs, nw, Up);

both are different. it looks like that the later one is indeed the face normal, the first one is the tangent.

More, most of the times the evaluation of nw in particleErosion.C is total nonsense, means the normal is aligned with y axis when it should be in the xz plane
Additional InformationI have tested this in the case of a 3d cylinder whose axis is aligned with the y axis.

I'm staying at your disposal if more info is required.
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
(0001460)
sylvain_aguinaga (reporter)
2012-07-11 16:12

I also tested a case of a cube where I can know the normal of the patches:

this->patchData(p, pp, trackFraction, tetIs, nw, Up); in standardWallInteraction.C provide the accurate normal

 vector nw = p.currentTetIndices().faceTri(mesh).normal(); in particleErosion.C gives nonsense values for the normal

My guess is that there is a problem in the .normal() function but that is for beyond my capacities

Thanks ahead for your comment

Sylvain
(0001530)
andy (manager)
2012-08-01 13:28

Thanks for the report

I've just pushed a potential fix under commit a7fc663 - can you test and report back?
(0001532)
sylvain_aguinaga (reporter)
2012-08-01 16:28

Hi Andy,

Thank you very much for helping me with that. I pulled the last git version and I have compiled only the intermediate library.

I understand now that you use only the following command in order to assess the normal

    this->owner().patchData(p, pp, trackFraction, tetIs, nw, Up);

unfortunately when I run my calculation the following error happens


#0 Foam::error::printStack(Foam::Ostream&) in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1 Foam::sigSegv::sigHandler(int) in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2 in "/lib/libc.so.6"
#3 Foam::ParticleErosion<Foam::KinematicCloud<Foam::Cloud<Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > > > >::postPatch(Foam::CollidingParcel<Foam::KinematicParcel<Foam::particle> > const&, Foam::polyPatch const&, double, Foam::tetIndices const&) in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/liblagrangianIntermediate.so"
#4
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#5
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#6
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#7
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#8
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#9
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#10
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#11
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#12
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
#13 __libc_start_main in "/lib/libc.so.6"
#14
 in "/home/calcul/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/icoUncoupledKinematicParcelFoam"
[1]+ Done gedit constant/kinematicCloudProperties
Erreur de segmentation

I will take a closer look tomorrow. Maybe have I to compile the whole code?

Thanks ahead

Sylvain
(0001533)
andy (manager)
2012-08-01 16:32

Yes - you'll also need to recompile the solver
(0001535)
sylvain_aguinaga (reporter)
2012-08-02 09:24

Dear Andy,

Works great!!! Many thanks for your help, it's very helpful!! I can go further in my development!!

Best regards

Sylvain
(0001536)
andy (manager)
2012-08-02 09:29

Thanks for the feedback

- Issue History
Date Modified Username Field Change
2012-07-11 09:50 sylvain_aguinaga New Issue
2012-07-11 16:12 sylvain_aguinaga Note Added: 0001460
2012-08-01 13:28 andy Note Added: 0001530
2012-08-01 16:28 sylvain_aguinaga Note Added: 0001532
2012-08-01 16:32 andy Note Added: 0001533
2012-08-02 09:24 sylvain_aguinaga Note Added: 0001535
2012-08-02 09:29 andy Note Added: 0001536
2012-08-02 09:29 andy Status new => resolved
2012-08-02 09:29 andy Fixed in Version => 2.1.x
2012-08-02 09:29 andy Resolution open => fixed
2012-08-02 09:29 andy Assigned To => andy