Higher Order Spectral Difference Methods
I came across a research paper in which problem was solved using Higher Order Spectral Difference Method. This method appears fantastic to me as it give very good results starting from very coarse mesh and its accuracy is also very good. I only use Fluent for my numerical work and Fluent don't have these methods in it. Has anybody ever had an experience with these methods? Thanks in advance
Regards |
Not the spectral difference method itself, but its closely related cousin, the spectral element method. But you won't find high order methods in most of the commercial solvers, they are almost exclusively used by researchers in their inhouse codes.
|
Quote:
|
Hi man,
Implementing high order method like spectral difference trough UDF in FLUENT, would be engaging as turning a granny into a miss Venezuela. I can suggest you few other alternatives. 1. Check out Nek5000 a free Spectral Element Method (SEM) code (it used to be Nekton in the late 80's). Other SEm codes you might download are Nektar, Semtex, ... To understand SEM, I suggest reading Deville, Fischer, Mund, or if you start using Nektar, Karniadakis, Sherwin. 2. Why not trying to implement Spectra Difference (SD) yourself. It won't be easy but it will be highly rewarding. I suggest two papers: Liu, Vinokur, Wang - Spectral difference method for unstructured grids I:Basic formulation, JCP 216 (2006) pp.780-801 and Sun, Wang, Liu - High-Order Multidomain Spectral Difference Method for the Navier-Stokes Equations on Unstructured Hexahedral Grids, Commun. Comput. Phys., Vol. 2, No. 2, pp. 310-333 :cool: P.S. If you think developing SD code on your own is a hard task- we can try doing it together. |
Quote:
yes, of course, it is well suited for coarse meshes. One can in fact show that a spectral difference method (the flavor Wang proposes) is identical to a spectral element method with nodal integration. but forget about implementing that in Fluent... you can't turn a plough horse into a racer, even if you add some bells and whistles and ribbons to it :) Nektar is a good place to start, or if you want to go DG, try the DG book by Hesthaven and Warburton (Springer), it has some Matlab code to get you going. |
Quote:
|
Quote:
In short: Low order schemes are easy to program, give you stable results and have a high tolerance for bullshit input. They will give you some pretty result, and the user doesn't call the hotline too often. High order methods are more difficult to program, need a lot more input from the user and careful design of your problem (i.e. the user has to know exactly what he is doing) and will still blow up many times. If a company would produce a high-order code and sell it to their customers who would then make their under-trained employees use it, the poor person at the vendor hotline would go crazy. To sum it up: There is no market for high order schemes, because there are very few people in the industry who could use them effectively and thus profit from them. |
thanks cfdnewbie I got my answer. have you ever written any code or even try to write it for your work?
|
Quote:
Recently we had a project, called LESinItaly, testing Fluent, TransAT, OpenFOAM, Code_Saturn and some FD, FV and spectral academic code in the LES of channel flow ... Fluent got the worst solutions owing to the large numerical viscosity. I suggest to try in implementing a high order code ... note that even for FV method you can implement schemes with high order of accuracy and good spectral resolution using high order flux reconstruction and deconvolution approaches. I think that is suitable to be implemented in FLuent by UDF but it is a very hard work to do |
Quote:
|
Quote:
http://www.lamc.ing.unibo.it/aimeta2011/ and a full paper is now under progress |
thanks a lot, very interesting! Great to see such a comparison!
|
Quote:
The paper is written in english |
yes, I found it, thank you. I'm currently doing an LES of the channel with a DG code with implicit (no sgs) and smagorinkys model, so this comparison is very helpful. When your paper has been published, it would be great if you could share the doi, so I could cite it!
thanks again very much, and a nice evening! |
Hello again guys.
I was thinking, because we speak here about high order methods, that maybe this is the right place to say smt about my recent effort in this area... I'm developing my own method (but maybe I will find out that somebody allready did it 30 years ago :confused:). It is a collocation method using Bernstein polynomials. :cool: You can download my code at: http://code.google.com/p/bernstein-poly/ Give it a try and let me know what you think. It has two versions - in Fortran and Python The code is in it's infancy, and now it solves only two-point BVP's. Newer version (not uploaded) solved some complicated non-linear IVP's like Korteweeg-de Vries-Burgers equation. I solved also Poisson eq. in 2D but there's some bug, I don't know what;s wrong (Poisson in 2D is available on request). I have in plan some two papers to publish when I find time... But this bug in 2D is really killing me. Hope to find it soon and start with fluid problems by the end of the fall. P.S. To cfd seeker: Now when you say what's the problem you're working on - I think the best way to go is Immersed Boundary Method. |
good going guys cfdnewbie, nikola, filippo....its nice to have a such a nice and precious info from you people....I will look at your work in detail after the weekend and Nikola what is Immersed Boundary Method? sorry i don't know about this(yes I am young and new in this field and still learning) can you please explain more?
|
Quote:
http://www.annualreviews.org/doi/abs....061903.175743 |
The Immersed Boundary Method is one of the ways to treat fluid-structure interaction.
It became popular lately for two reasons:
I can suggest two papers, which are really practical:
|
Quote:
In the following we had times to also assess the performances of the unbounded scheme present in Fluent and, of course, everything changed. Such results are also present in a companion paper in the conference proceedings cited by Filippo (Lampitella et al.) and are those which will be used for the comparisons in the final paper. We didn't change opinion on the suitability of the different schemes but it is certainly more fair to compare the codes at their best possibility (as, indeed, all the contributors of LESinItaly already did for the conference). The main outcome from this new comparison does not show any particular difference indicating Fluent as worst than the other codes in predicting the main quantities from the wall-resolved channel flow case, not even the more fancy-spectral codes. However, differences still exist, of course. Notice that this is also in line with some recent French-German collaboration on the LES-DES of the Ahmed car body, where the fancy spectral code failed to predict the Drag coefficient by 44%. Of course, there are reasons for this, very well explained in the paper (C&F 2011), but at the end of the day (several actually, due to the computing times) that was the number. Having said so, i totally agree with you on everything and i also want to stress the fact that i am not working in ANSYS, i'm just an user. Actually, coming to the original question, i also had my experience in trying to implement my own convective scheme in Fluent by UDF. It was a first order symmetry preserving central scheme, and i worked on trying to modify the basic first order upwind by a deferred correction approach, that is the most simple modification immaginable for a code because it only requires a very simple source term for each cell. However, i had no way to manage this and i didn't obtain the expected behaviour so i abandoned the idea. The fact is that, even with all the provided UDF macros to enter the code in all the possible places, the strict control is not possible. Notice that in Fluent you can implement your own scalar equation, and is also very easy to implement your own convection scheme; but this approach is limited to iterative p-v coupling approaches (no fractional step) and not applicable to the momentum equation. If you extrapolate this experience to the main question of this post, i think that is actually impossible to work on UDFs to obtain a SFD code. Still, if Fluent had the proper routines to modify the schemes by deferred correction approach, than no limitation would exist in obtaining very high order schemes but still in a FV framework. I don't know how much it fits with the cited work on Bernstein polinomials, but i recently found this work: http://www-2.unipv.it/compmech/publications/2007_9.pdf Also, if i remember well, there is some work by Kravchenko and Moin using NURBS interpolation in a FV framework with non matching interfaces. But nothing similar is available, or at least i am not aware of. So your contribution is certainly welcome. Finally, nek5000 certainly is a good reference. I would also suggest to take a closer look to this new entry of the opensource scene: http://code.google.com/p/incompact3d/ Actually, it isn't available yet but it is very promising |
@sbaffini
Thanks! The paper you linked is on Hughes Variational Multiscale Approch (interesting thing per se), and they use NURBS based finite elements. A recent Hughes effort is Isogemetric Analysis (cf. isoparametric elements). The idea is to use same functions to model the geometry in CAD and as trial functions in FEM. I'm aware of Kravchenko and Moins work - they used B-splines for expansion in non-uniform direction in channel flow simulations, if I'm correct. B-splines (and therfore NURBS) are very closely related with Bernstein polynomials. Bernstein polynomials are very interesting on their own. Check out my blog (see link below) if you're interested to see more but don't have time to test the code. |
All times are GMT -4. The time now is 15:35. |