explicit/implicit dynamic models for LES
Hi every one,
I have a LES code with different dynamic models. The first model (dynamic smagorinsky by lilly) is fully implicit (I calculate the eddy viscosity and directly use it in the coefficinets) and is working nicely for bluff bodies. I have also embedded other models (i.e. dynamic two parameter mixed model by morinishi), but for this one, I directly calculated the Tau_ij, then calculated the gradient of it and put it in the source term (fully explicit). But this one is unstable. I tried to change the tresholds and even set the similarity term as zero but it is still diverging for bluff body flows. I geuss it might be because I am treating it explicitly (the code itself is fully implicit fractional step method) but I am not sure about it. It is possible for me to make it semiimplicit (treating the eddy viscosity part as implicit and the rest of the Tau_ij explicitly). Now I am just wondering if any one has had a similar experience to comment about this instability. Thank you very much 
Quote:
I'm currently using the dynamic one and twoparameter mixed model in my LES code, based on the fractional step method. All the SGS terms are treated explicitly in the AdamsBashforth scheme (along with the convective terms) without stability problems. The scheme advances implicitly only for the molecular diffusion that leads to a linear algebraic system. Furthermore, if you use an implicit scheme for the eddy viscosity flux then you have to face a nonlinear system since vis_sgs= vis_sgs[v*(vn+1)] 
1You mean you calculate the SGS stress and its gradient and then add it to the source term? Right?
2BTW, I am using cranknicolson time advancement schem. How about your discretization? mine is energy conservative second order central differencing by Ham et al (JCP 2002) 
Quote:
however, I use a FV formulation, therefore I have the surface integral of the normal component of the stress tensor, this is the source term 
I would ask:
How are you limiting/clipping the eddy viscosity and the scale similar constants? How do you take their values into account in setting the time step when the model is used in explicit fashion? SGS models (especially dynamic ones) are usually used explicitly due to their high non linearity; however, this is especially the case of codes treating the convection term explicitly as well. However, actually, what you call "implicit" implementation for the dynamic smagorinsky...well it is what is usally interpreted as "explicit". That is, the diffusion is still treated implicitly, just the SGS viscosity is based on the previous time velocity field. What you call "explicit" is explicit indeed... but you are treating the viscous term explicitly as well. I would never try... more than ever in a code which is fully implicit. If you are treating the convection term implicitly, then updating the SGS term with the inner iterations is the best, fully implicit, time consuming solution. Otherwise just treat the eddy viscosity part implicitly as you used to do with the dynamic smagorinsky. 
Yeah. Thank you. you are right. We use old velocities for eddy viscosity which is in fact explicit.
By Implicit, I meant adding the eddy viscosity to viscous terms and having that in the coefficient of our algebraic equation instead of adding the divergence of of Tau_ij to the source term. For clipping, I use 0.1 for the upper limit of viscous coefficient and 0 for the lower limit and +0.05 and 0.05 as the threshold for the coefficient of scale similar term. Do you consider negative values for dynamic Smagorinsky part? an other question. I have not tried that and I am just curious: When we want to add the divergence of Tau_ij to the source term, If we do not make Tau_ij trace free, how much will it be deviated? I want to know how important this part is? 
I think that the problem you are experiencing is mostly due to the stability, due to the fact that you are treating the SGS viscous term explicitly (as source term), so i would simply go back to your original implicit approach (used for dynamic smagorinsky).
Besides this, i would like to stress that, in my opinion, from a very general point of view, the classical least squares approaches in computing the Germano dynamic constant are not very well posed. The Germano identity is exact but the computational approaches to compute the constants of the models from it are somehow arbitrary. The constants are usually extracted from the test filter, five independent relations (incompressible flows) are reduced to one whose error is minimized in a least square sense, etc. So, at the end of the day, to make these constants assume some physical values is hard and is more an art than a science. Here is my experience/toughts. Is hard to justify a negative eddy viscosity, especially when it is the outcome of such an erroneous procedure, still it could have some sense as the dynamic procedure gives you a dissipation calibrated on the energy flux estimated on the test filter level (but then one should ask if the estimate is properly made, is accurate enough, etc.). I don't use negative values as my simulations tend to explode and i don't want that. When you use a mixed model however, i would definitely not allow for negative values of the eddy viscosity constant (EVC), because you have the structural part which in case should play on the backscatter side. The highest admittable value of the EVC is also model dependent. I work with the mixed scale model of sagaut and thapuoc and i use the theoretical value of the EVC (for an infinite inertial range) as upper limit; this actually is questionable as someone would allow a higher range for a dynamic constant... i'm still learning and evaluating different approaches and i have no definite answer on that. For the structural part of the model i think that the sign is even more important, as you're not working with a model in a classical sense but more with an estimate of a certain physical quantity (would you accept negative temperatures just because they are the output of a numerical procedure?) . So i don't allow negative values for the structural part constant (SPC) neither. This is my point of view, could be wrong but i think it has some sense at least. For what concerns the trace of the modeled tensor, well... the fact is that as long as you are using a projection method to obtain a divergence free velocity field, then all the gradient terms should be covered by it. In practice, you could not subtract the trace from your SGS tensor (which, for consistency, once discretized, should be seen the same way as a provisional pressure gradient) but then it would be completely overcome by the final pressure correction to obtain a divergence free velocity field. so there should be no point in using a non trace free tensor. However, the trace of the modeled SGS tensor also enters the pressure equation (as the full SGS tensor does), so its effect could be felt there... i don't actually know the answer, this is one of the things i would like to test but i never have time to; also, i don't know any literature on this. 
Quote:

Thank you very much.
1Yeah. About the stability I think the solution is to make it semi implicit (treating the dynamic smagorinsky part implicitly and adding the rest of the divergence of Tau_ij to the source term. I did it and now it is running stably). Now is that also possible to do it fully implicitly? (i.e. calculating the whole Tau_ij and then assuming a new Nu_sgs and treat it like before) 2about the dynamic model coefficient, there are some papers in POF in 1990 and 1991 by Moin et al. which shows some physical result of backscatter which is in fact the result of negative value of model coeff. I also did an a priori analysis at CTR (stanford) this summer on one of Moin's BL data and got similar similar result. 
1  Essentially it should be very easy. While in your implicit code you are iterating, there are some terms which need to be updated with the iterations (e.g., convective terms). You should be able to update your SGS model in the exact same way.
2  I really venerate CTR at Stanford like if it was the Vatican (guess who the Pope is? Not talking about Stephen) but, i don't usually tend to easily buy ideas which do not fit my physical intuition. In the case of the backscatter for the dynamic eddy viscosity model i already expressed my opinion (there are too much flaws in the procedure to trust the negative values). Let me put it in an other way: Do you think that the Germano identity error is a trustable measure of SGS models' quality? Or, put differently, is the minimization of the error in the Germano identity robust to model deficiencies? My answer is no for both the questions, so i don't believe the outcomes of the dynamic procedure by per se; have you ever tried to see the PDF of the constants as computed (no clipping, no averaging)? I think it is very enlightening 
Quote:

All times are GMT 4. The time now is 00:47. 