mfem / mfem

Lightweight, general, scalable C++ library for finite element methods
http://mfem.org
BSD 3-Clause "New" or "Revised" License
1.62k stars 473 forks source link

Reference on viscosity operator of Laplacian type #1197

Closed tkyhys closed 4 years ago

tkyhys commented 4 years ago

Hi,

I'm trying this library and an example code (ex10.cpp), and have a trivial question. This example adopts the viscosity operator of Laplacian type as a damping term, but I've never seen this type of damping. Is this a general term? Can you please tell me any books on it if you know?

Thanks,

tzanio commented 4 years ago

Maybe I am missing your question, but the diffusion/Laplacian operators are pretty typical for modeling physical or artificial viscosity, see e.g. the incompressible Navier Stokes equations or https://computing.llnl.gov/projects/blast/JCP-09.pdf.

v-dobrev commented 4 years ago

I'm not sure if this type of viscosity is commonly used in elastodynamics -- it is used in the example for simplicity (it is a constant in time linear term) and by analogy with fluid flow. It guarantees that the total energy of the system (kinetic + elastic) is decreased at a rate of -(Sv,v) which is always negative; here S is the discretized minus Laplacian (in reference frame) which is an SPD matrix and v is the velocity.

tkyhys commented 4 years ago

Sorry not to make it clear enough. As @v-dobrev mentioned I meant to ask that in elastodynamics. I often see Rayleigh or structural damping as the viscosity in the field, but I found this type of viscosity for the first time.

I understood that is to simplify the governing equation and there might be no references on it. Thank you for replying.