# lift coefficient for multi-element wing

 Register Blogs Members List Search Today's Posts Mark Forums Read

 February 26, 2010, 12:22 lift coefficient for multi-element wing #1 Member   Leonardo Nettis Join Date: Mar 2009 Posts: 72 Rep Power: 8 Dear all, I'm trying to obtain the lift coefficient by means of the library forces.so (set in the ControlDict). The settings are the follwing: ----------------------------------------------------- forces { type forces; functionObjectLibs ("libforces.so"); patches (front_wing rear_wing main_wing); rhoName rhoInf; rhoInf 1.176; CofR (0 0 0); outputControl timeStep; outputInterval 100; } forceCoeffs { type forceCoeffs; functionObjectLibs ("libforces.so"); patches (front_wing rear_wing main_wing); rhoName rhoInf; rhoInf 1.176; CofR (0 0 0); liftDir (0 1 0); dragDir (1 0 0); pitchAxis (0 0 0); magUInf 7; lRef 6.0; Aref 1.0; outputControl timeStep; outputInterval 100; } -------------------------------------------------- As it is possible to see the geometry is composed by 3 profiles. Therefore the reference lenght I imposed corresponds to the global lenght (or chord) of the 3 profiles in the wind direction. The result of the firts 1000 iteration (in which the simulation should be converged) is the following: # Time Cd Cl Cm 100 0.0121195 0.0343389 0 200 0.0114814 0.0389873 0 300 0.0113282 0.0410893 0 400 0.01112 0.0436375 0 500 0.0108316 0.0464789 0 600 0.0105124 0.0490456 0 700 0.0102129 0.0515734 0 800 0.00987898 0.0542187 0 900 0.0094987 0.0563448 0 1000 0.00913385 0.0579033 0 First of all the coefficient seems to be still incresing with time, although the simulation should be converged (residuals 1e-7). However I don't think it will never reach the expected value that is around 3. Which could be the reason of such a low value?? I'm using a k-epsilon model with wall functions and simpleFoam solver. Unfortunately I've just checked the y+ and it is exactly in the range in which it should not be, i.e. between 5 and 30. So I have 2 question: - such a big error could be due to the wrong y+?? - since I guess I have to modify the mesh, it is better to adopt a low Re model (I would prefer to avoid that due to the more complex mesh) or again wall functions?? Thanks you very much in advance. Dino

 February 27, 2010, 14:35 #2 Senior Member   Francesco Del Citto Join Date: Mar 2009 Location: Zürich Area, Switzerland Posts: 217 Rep Power: 9 Hi Dino, I think your reference area is wrong (it is used for force coefficients). If you know that your coefficient should be 3, from the same source you should find the area they used for computing that coefficient. About the convergence, which residual is 1e-7, the one at the beginning or at the end of the solver? You should monitor the initial one to check convergence. From my experience, you need more than 1000 iterations to converge... Hope this helps, Francesco

 March 3, 2010, 07:30 #3 Member   Leonardo Nettis Join Date: Mar 2009 Posts: 72 Rep Power: 8 Hi Francesco, you were right. I check the code and the coefficients Cd and Cl are both calculated with the reference area even if it is a 2D calculation. In fact comparing the result I get for a rae2822 testcase they are scaled of a factor that is equal to the thickness of the grid in the 3rd direction. Therefore the parameters have to be set in this way: -Aref=chord*thickness of the grid -Lref=chord thanks for your help dino

 March 3, 2010, 07:37 #4 Member   Leonardo Nettis Join Date: Mar 2009 Posts: 72 Rep Power: 8 ps: I forgot, there is still something I cannot understand. Although the initial residuals, as you suggested are quite low (the highest is pressure that is 1e-5) the coefficients slowly, but continuosly, decrease!! suggestions?

 March 3, 2010, 15:57 #5 Senior Member   Francesco Del Citto Join Date: Mar 2009 Location: Zürich Area, Switzerland Posts: 217 Rep Power: 9 Can you please post the output of a couple of iterations?

 March 3, 2010, 17:23 #6 Member   Leonardo Nettis Join Date: Mar 2009 Posts: 72 Rep Power: 8 these are the last 3 iterations: ------------------------------------------------------------------------------------- Time = 6998 smoothSolver: Solving for Ux, Initial residual = 9.93475e-07, Final residual = 9.91825e-08, No Iterations 2 smoothSolver: Solving for Uy, Initial residual = 1.42939e-06, Final residual = 2.13243e-08, No Iterations 4 GAMG: Solving for p, Initial residual = 4.38484e-06, Final residual = 4.17025e-08, No Iterations 6 time step continuity errors : sum local = 3.50698e-12, global = 3.3235e-14, cumulative = -1.18192e-10 smoothSolver: Solving for epsilon, Initial residual = 1.8578e-06, Final residual = 2.03126e-08, No Iterations 4 smoothSolver: Solving for k, Initial residual = 3.68588e-06, Final residual = 4.06477e-08, No Iterations 4 ExecutionTime = 4959.74 s ClockTime = 4963 s Time = 6999 smoothSolver: Solving for Ux, Initial residual = 9.93343e-07, Final residual = 9.91885e-08, No Iterations 2 smoothSolver: Solving for Uy, Initial residual = 1.42949e-06, Final residual = 2.13262e-08, No Iterations 4 GAMG: Solving for p, Initial residual = 4.42572e-06, Final residual = 3.17665e-08, No Iterations 7 time step continuity errors : sum local = 2.73255e-12, global = 4.25529e-14, cumulative = -1.18149e-10 smoothSolver: Solving for epsilon, Initial residual = 1.8574e-06, Final residual = 2.03082e-08, No Iterations 4 smoothSolver: Solving for k, Initial residual = 3.68551e-06, Final residual = 4.06433e-08, No Iterations 4 ExecutionTime = 4962.15 s ClockTime = 4965 s Time = 7000 smoothSolver: Solving for Ux, Initial residual = 9.93306e-07, Final residual = 9.92398e-08, No Iterations 2 smoothSolver: Solving for Uy, Initial residual = 1.42507e-06, Final residual = 2.12558e-08, No Iterations 4 GAMG: Solving for p, Initial residual = 4.41421e-06, Final residual = 3.60377e-08, No Iterations 7 time step continuity errors : sum local = 3.06222e-12, global = 4.82754e-14, cumulative = -1.18101e-10 smoothSolver: Solving for epsilon, Initial residual = 1.85699e-06, Final residual = 2.03038e-08, No Iterations 4 smoothSolver: Solving for k, Initial residual = 3.68514e-06, Final residual = 4.06389e-08, No Iterations 4 ExecutionTime = 4967.1 s ClockTime = 4970 s ------------------------------------------------------------------------------------- thanks, dino

 March 16, 2010, 14:14 #7 Senior Member   Francesco Del Citto Join Date: Mar 2009 Location: Zürich Area, Switzerland Posts: 217 Rep Power: 9 Do they decrease or they are changing in a cyclic way? Have you tried to raise up the underrelaxation factors, if they are low?

 April 25, 2010, 12:57 #8 Senior Member   Herman Join Date: Nov 2009 Posts: 122 Rep Power: 8 Hi all, I'm doing a simulation on a 3D model, and I need to have force on a surface. What does CofR stands for in 3D simulation? I need to define a rotation AXIS, and not CENTER in 3D simulation.... how can define it? Thanks.

 April 25, 2010, 13:49 #9 Senior Member   Francesco Del Citto Join Date: Mar 2009 Location: Zürich Area, Switzerland Posts: 217 Rep Power: 9 CofR is the Centre of Rotation for moments calculation (see src/postProcessing/functionObjects/forces/forces/forces.H). You will get a 3D moment vector. About forces, they are computed in the computational system of reference (i.e., along X,Y,Z). If you want lift and drag coefficients along specific axis, use forceCoeffs functionObject (see src/postProcessing/functionObjects/forces/forceCoeffs/forceCoeffs.H). Hope this helps, Francesco

 April 25, 2010, 14:06 #10 Senior Member   Herman Join Date: Nov 2009 Posts: 122 Rep Power: 8 Hi francesco, Thanks for your reply. Yes, of course... I can calculate only the vector moment. I have a problem with force function: I add the following lines to the controlDict file: functions ( force { type forces; functionObjectLibs ("libforces.so"); //Lib to load patches (blades); // change to your patch name rhoName rhoInf; rhoInf 1.225; //Reference density for fluid CofR (0 0 0); //Origin for moment calculations outputControl timeStep; outputInterval 1; } ); For 2D model I don't have any problem, but for 3D ones OF give me an error: *** glibc detected *** turbDyMFoam: corrupted double-linked list: 0x08845f90 *** ======= Backtrace: ========= /lib/tls/i686/cmov/libc.so.6[0xb594d0cd] /lib/tls/i686/cmov/libc.so.6[0xb594e88e] /lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb59524f0] /home/enrico/OpenFOAM/ThirdParty/gcc-4.3.1/platforms/linux/lib/libstdc++.so.6(_ZdlPv+0x21)[0xb5b2f051] /home/enrico/OpenFOAM/ThirdParty/gcc-4.3.1/platforms/linux/lib/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1d )[0xb5b0d61d] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so(_ZN4Foam14primitiveEntryD0Ev+0x111)[0xb5d1c531] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so(_ZN4Foam10dictionaryD2Ev+0x79)[0xb5d15d79] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so(_ZN4Foam15dictionaryEntryD0Ev+0x33)[0xb5d22da3] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so(_ZN4Foam10dictionaryD1Ev+0x79)[0xb5d143a9] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so[0xb5ca0aeb] /lib/tls/i686/cmov/libc.so.6(__cxa_finalize+0xb1)[0xb59113b1] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so[0xb5ca0893] /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libOpenFOAM.so[0xb5fa731c] /lib/ld-linux.so.2[0xb772c00f] /lib/tls/i686/cmov/libc.so.6(exit+0xd4)[0xb5911084] /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe8)[0xb58f9458] turbDyMFoam(_ZNK4Foam11regIOobject11writeObjectENS _8IOstream12streamFormatENS1_13versionNumberENS1_1 5compressionTypeE+0xcd)[0x8058ee1] ======= Memory map: ======== 08048000-080a3000 r-xp 00000000 08:05 434209 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/applications/bin/linuxGccDPOpt/turbDyMFoam 080a3000-080a4000 rw-p 0005b000 08:05 434209 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/applications/bin/linuxGccDPOpt/turbDyMFoam 080a4000-08cfe000 rw-p 080a4000 00:00 0 [heap] b37e2000-b3889000 r-xp 00000000 08:05 346976 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libLESfilters.so b3889000-b388b000 rw-p 000a6000 08:05 346976 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libLESfilters.so b388b000-b399e000 r-xp 00000000 08:05 346980 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libcompressibleLESModels.so b399e000-b39a2000 rw-p 00112000 08:05 346980 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libcompressibleLESModels.so b39a2000-b3b49000 r-xp 00000000 08:05 346975 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libcompressibleRASModels.so b3b49000-b3b4c000 rw-p 001a7000 08:05 346975 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libcompressibleRASModels.so b3b4c000-b3c9b000 r-xp 00000000 08:05 346979 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libincompressibleLESModels.so b3c9b000-b3ca0000 rw-p 0014e000 08:05 346979 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libincompressibleLESModels.so b3e0b000-b3e33000 r-xp 00000000 08:05 346978 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libLESdeltas.so b3e33000-b3e34000 rw-p 00028000 08:05 346978 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libLESdeltas.so b3e34000-b3e7a000 r-xp 00000000 08:05 346958 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libspecie.so b3e7a000-b3e7b000 rw-p 00045000 08:05 346958 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libspecie.so b3e7b000-b3ec6000 r-xp 00000000 08:05 346965 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libbasicThermophysicalModels.so b3ec6000-b3ec8000 rw-p 0004a000 08:05 346965 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libbasicThermophysicalModels.so b4c71000-b4cc4000 r-xp 00000000 08:05 346987 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libforces.so b4cc4000-b4cc6000 rw-p 00053000 08:05 346987 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libforces.so b4f00000-b4f21000 rw-p b4f00000 00:00 0 b4f21000-b5000000 ---p b4f21000 00:00 0 b5076000-b507f000 r-xp 00000000 08:05 345098 /lib/tls/i686/cmov/libnss_files-2.7.so b507f000-b5081000 rw-p 00008000 08:05 345098 /lib/tls/i686/cmov/libnss_files-2.7.so b5081000-b5089000 r-xp 00000000 08:05 345100 /lib/tls/i686/cmov/libnss_nis-2.7.so b5089000-b508b000 rw-p 00007000 08:05 345100 /lib/tls/i686/cmov/libnss_nis-2.7.so b509b000-b509f000 rw-p b509b000 00:00 0 b509f000-b50a1000 r-xp 00000000 08:05 345108 /lib/tls/i686/cmov/libutil-2.7.so b50a1000-b50a3000 rw-p 00001000 08:05 345108 /lib/tls/i686/cmov/libutil-2.7.so b50a3000-b50b7000 r-xp 00000000 08:05 345095 /lib/tls/i686/cmov/libnsl-2.7.so b50b7000-b50b9000 rw-p 00013000 08:05 345095 /lib/tls/i686/cmov/libnsl-2.7.so b50b9000-b50bb000 rw-p b50b9000 00:00 0 b50bb000-b50f0000 r-xp 00000000 08:05 475690 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libopen-pal.so.0.0.0 b50f0000-b50f1000 r--p 00034000 08:05 475690 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libopen-pal.so.0.0.0 b50f1000-b50f2000 rw-p 00035000 08:05 475690 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libopen-pal.so.0.0.0 b50f2000-b5115000 rw-p b50f2000 00:00 0 b5115000-b5165000 r-xp 00000000 08:05 475692 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libopen-rte.so.0.0.0 b5165000-b5166000 r--p 00050000 08:05 475692 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libopen-rte.so.0.0.0 b5166000-b5168000 rw-p 00051000 08:05 475692 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libopen-rte.so.0.0.0 b5168000-b517e000 r-xp 00000000 08:05 346897 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libGKlib.so b517e000-b517f000 rw-p 00016000 08:05 346897 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libGKlib.so b517f000-b51c6000 r-xp 00000000 08:05 346898 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libmetis.so b51c6000-b51c7000 rw-p 00047000 08:05 346898 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libmetis.so b51c7000-b5236000 r-xp 00000000 08:05 475679 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libmpi.so.0.0.0 b5236000-b5237000 r--p 0006e000 08:05 475679 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libmpi.so.0.0.0 b5237000-b523e000 rw-p 0006f000 08:05 475679 /home/enrico/OpenFOAM/ThirdParty/openmpi-1.2.6/platforms/linuxGccDPOpt/lib/libmpi.so.0.0.0 b523e000-b5245000 rw-p b523e000 00:00 0 b5245000-b5258000 r-xp 00000000 08:05 346894 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libz.so b5258000-b5259000 rw-p 00012000 08:05 346894 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libz.so b5259000-b525f000 r-xp 00000000 08:05 346905 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/liblagrangian.so b525f000-b5260000 rw-p 00006000 08:05 346905 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/liblagrangian.so b5260000-b527b000 r-xp 00000000 08:05 346903 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libdecompositionMethods.so b527b000-b527c000 rw-p 0001b000 08:05 346903 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libdecompositionMethods.so b527c000-b52ab000 r-xp 00000000 08:05 346920 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libtopoChangerFvMesh.so b52ab000-b52ac000 rw-p 0002f000 08:05 346920 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libtopoChangerFvMesh.so b52ac000-b52ad000 rw-p b52ac000 00:00 0 b52ad000-b53f5000 r-xp 00000000 08:05 346917 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libsampling.so b53f5000-b53f9000 rw-p 00148000 08:05 346917 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libsampling.so b53f9000-b5465000 r-xp 00000000 08:05 346906 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libtriSurface.so b5465000-b5466000 rw-p 0006b000 08:05 346906 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libtriSurface.so b5466000-b5467000 rw-p b5466000 00:00 0 b5467000-b55c9000 r-xp 00000000 08:05 346914 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libfvMotionSolver.so b55c9000-b55ce000 rw-p 00162000 08:05 346914 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libfvMotionSolver.so b55ce000-b5632000 r-xp 00000000 08:05 346916 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libfaceDecompositionMotionSolver.so b5632000-b5634000 rw-p 00063000 08:05 346916 /home/enrico/OpenFOAM/OpenFOAM-1.5-dev/lib/linuxGccDPOpt/libfacAborted Can you help me? I tried to recompile the force library, without solving my problem. Any ideas? Thanks!

 April 25, 2010, 14:35 #11 New Member   sasha Join Date: Feb 2010 Posts: 10 Rep Power: 7 Hi enry try change force to forces functions ( forces { type forces; functionObjectLibs ("libforces.so"); //Lib to load patches (blades); // change to your patch name rhoName rhoInf; rhoInf 1.225; //Reference density for fluid CofR (0 0 0); //Origin for moment calculations outputControl timeStep; outputInterval 1; } ); sasha

 April 25, 2010, 15:04 #12 Senior Member   Herman Join Date: Nov 2009 Posts: 122 Rep Power: 8 Hi sasha, thanks for your reply! I tried to do what you said, but without solving the problem. That word can be what you want, without any link to what you are calculating. Any other ideas?

 April 26, 2010, 03:38 #13 Senior Member   Herman Join Date: Nov 2009 Posts: 122 Rep Power: 8 I understood the meaning of Pitch axis, and it's what I'm looking for. It is the axis for Cm calculation; Cm is moment coefficient around Pitch axis, defined in controlDict. However, I can't solve the error that OF post at the end of simulation...any suggestion? thanks

 Thread Tools Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post vinz OpenFOAM Running, Solving & CFD 98 October 27, 2008 09:43 MH FLUENT 0 February 25, 2007 12:48 Rola FLUENT 1 November 12, 2006 14:29 Noé CD-adapco 5 July 13, 2004 10:21 Jan Jagrik FLUENT 0 September 21, 2000 10:21

All times are GMT -4. The time now is 23:39.