Attenuation numerical instability via numerical diss. nonlinear ODE

lundi 28 avril 2014

Hi,



I'm solving a problem numerically that takes the form



[itex] Q_{ij} \ddot{y}_j +S_{ijk}\dot{y}_j\dot{y}_k +V_i=0[/itex],



where [itex] (Q_{ij},S_{ijk},V_i) [/itex] are all functions of the dependent variables [itex]y_i[/itex]. The dependent variables are all functions of the variable t. The resolution of this spectral model is controlled by the number of [itex]y_i[/itex], denoted N.



Now, when these equations become stiff, or I integrate for long times, numerical instability becomes apparent. If I increase the resolution, these spurious growths are attenuated, but it is not feasible to make N large enough so that they don't appear at all.



If one looks at the time history of the higher modes, it seems like their large growth corresponds to the onset of the instability, so I want to attenuate these (un-physical) fast growing components of the solutions.



To this end, I have added a term to the leading order term, so that the equation takes the form



[itex] Q_{ij}( \ddot{y}_j +\nu j^2 \dot{y}_j)+S_{ijk}\dot{y}_j\dot{y}_k +V_i=0[/itex],



where [itex]\nu[/itex] is a numerical viscosity to be prescribed later on. This does an OK job at attenuating the instability (e.g. I get accurate solutions for an twice as long), based on how I choose [itex]\nu[/itex], and the constraints of the problem. I have played around with the power of j as well, and found varying success in different contexts.



The issue is, for long times this scheme breaks down, and the solution greatly deviates from the expected solution, making me think I'm not doing addressing the issue very rationally. Indeed, I am doing all of this very naively, and am having trouble finding similar types of problems in the literature.



Does anyone have experience damping numerical instabilities in equations that take this form? In particular, is there a way to essentially add a dissipation that removes these fast growing modes? References to relevant literature are also greatly appreciated.



Thanks!



Nick





0 commentaires:

Enregistrer un commentaire