Aorta3D application
OpenLB – Open Source Lattice Boltzmann Code › Forums › on OpenLB › General Topics › Aorta3D application
- This topic has 9 replies, 4 voices, and was last updated 8 years, 9 months ago by mathias.
-
AuthorPosts
-
November 21, 2014 at 4:02 am #1765CatnpatxMember
rnI am quite interested in the application of the code for aorta3d. rnrnFirst thing I noticed was the scales in boundaryCondition3d.h and aorta3d.cpp were different. BoundaryCondition3d.h uses mm, and aorta3d.cpp uses meters. rnrnIn principle, the code for aorta3d.cpp should work for any similar geometry with 1 inflow and 2 outflows. I modified the geometry and changed the center-points, normal directions, and radii, and the program just would not work.Technically it worked, but the pressure was more than 10^38 and velocity was zero.rnrnAre there any other things that need to be changed for the code to work for a similar geometry?
November 25, 2014 at 9:52 am #2153mathiasKeymasterYes, that is a bit confusing since we have mm, m and lattice units. Therefore, in the upcomming code which will be released soon, we do all computations in SI units. Meanwhile, please have a look at our cylinder3d example. This example is related to a paper of Schäfer&Turek [http://www.math.u-psud.fr/~maury/paps/NUM_NS.BenchmarkTurek.pdf]. In it the conversation of units becomes clear.rnrnBest regardsrnMathias
November 26, 2014 at 3:08 pm #2156CatnpatxMemberThank you, Mathias.rnA quick follow-up question on the aorta3d:rnrnIt seems that the definition of normal vectors for the inflow and outflow is opposite to the flow direction.rnThe normal vector is pointing away from the geometry at the inflow, but pointing into the domain at the outflow.rnHowever, the final solution seems to be fine with the right flow direction.rnrnUnfortunately, when I used the code on my own geometry, the flow was all backwards; flow was from the outflow to the inflow. I learned that it would not change anything if I reverse the normal vectors?rnWhat did I do wrong? rnrn
November 26, 2014 at 3:37 pm #2157mathiasKeymasterHi,rnrnI see. There are two normals actually. One is always pointin inwards just to check if the geometry is well suited for the boundary condition one want to apply (checking and renaming materials””. The other normal is to set the fluid direction. In future we will not work with the extra file in the examples.rnrnBest regardsrnMathias
October 6, 2015 at 3:08 pm #2255ivychanMemberYes I have similar concern of the setting of inflow and outflow. Could you please tell what are the parameter representing inside the brackets? Is it (x, y, z, out-direction,in-direction ,out-direction, radius)?rnrn
Code:IndicatorCircle3D<bool,T> inflow( 0.218125 ,0.249987-2.*converter.getLatticeL() ,0.0234818, 0., -1.,0., 0.0112342+2*converter.getLatticeL() );rnIndicatorCircle3D<bool,T> outflow0(0.2053696,0.0900099+2.*converter.getLatticeL(),0.0346537, 0.,1.,0., 0.0054686+2*converter.getLatticeL() );rnrnI am quite confused with the (0, -1, 0). Are they representing planes of inflow and outflow? Do we need to add the angle if they are not normal plane?rnrnThank you. rnrnrn
October 8, 2015 at 6:00 am #2260mathiasKeymasterHi ivychan,rnrnit is creating a cylinder where (0,-1,0) is the orientation. Please heave a look at the implementation which you will find in functors/indiacatorF* .rnrnBestrnMathias
October 27, 2015 at 5:07 pm #2266ivychanMemberThank you very much for your reminder. I checked back the user guide and foundrn
Code:IndicatorCircle3D <T,T> circleInd ( center1 , center2 , center3 , normal1 , normal2 , normal3 , radius );rnrnI tried to import another vessel data and set the inflow and outflow according to the above functors. However, the running got failed as “”Segmentational Fault”” in the terminal. rnrnrnIn this data, it has one inflow and only one outflow. I input the geometry points of inflow/outflow as the followings, rnrn
Code:IndicatorCircle3D<bool,T> inflow( 0.030109 ,-0.0036929-2.*converter.getLatticeL() ,0.011362, 0., -1.,0., 0.0019551+2*converter.getLatticeL() );rnIndicatorCircle3D<bool,T> outflow0(0.030491,-0.0032984+2.*converter.getLatticeL(),-0.011663, 0.,1.,0., 0.0019476+2*converter.getLatticeL() );rnrnI tried several inflow/outflow points but there is still error. I am curious if these have been set incorrectly so that the aorta3D cannot run. rnrnIs this channel-flow data possible to be simulated using aorta3D?rnMy data:rnhttps://drive.google.com/file/d/0B8fm2qG6fianT1dpYW43d256NWM/view?usp=sharingrnrnThank you.
October 27, 2015 at 5:46 pm #2267mathiasKeymasterHi,rnrn1/ check that the stl file is read in SI units and that the cylinder center etc. fit to the geometry.rn2/ check the material number in the geoemtry file. rn3/ make sure that the pressure boundary is pararllel to the coornate system.rnrnBestrnMathias
November 25, 2015 at 10:38 am #2224ivychanMemberHi Mathias, rnrnThank you very much for your reminder. I tried to adjust the surface by 3DSlicer but i failed to make very accurate “”pressure boundary parallel to the coordinate system””. Would you suggest any software for this?rnrnBesides, I want to learn more on how the aorta3D was validated by FEM and FVM. I tried to validate it in ANSYS CFX but it requires sinusoidal velocity profile of the surface. Did you use ANSYS CFX to validate the aorta3d output result? rnrnThank you.rnrnYours sincerely,rnIvy
November 25, 2015 at 2:45 pm #2225thomasMemberHi Ivy,rnrnwe puplished a proceeding containing this simulation, which you can find here:rnhttp://link.springer.com/chapter/10.1007/978-3-642-36961-2_5rnrnIn the book containg the paper you ll find some more work on that example:rnhttp://link.springer.com/book/10.1007/978-3-642-36961-2rnrnRegardsrnThomasrnrn
-
AuthorPosts
- You must be logged in to reply to this topic.