idaholab / moose

Multiphysics Object Oriented Simulation Environment
https://www.mooseframework.org
GNU Lesser General Public License v2.1
1.71k stars 1.04k forks source link

Add kernel for thermo-diffusion #3392

Closed shanestafford closed 10 years ago

shanestafford commented 10 years ago

Provide a new kernel for terms that look like u * grad(v) in the evolution equation for u where v is a coupled primary variable. This includes thermo-diffusion (aka Soret effect or thermophoresis) as well as the other transport terms from Onsager's symmetry (Ettingshausen, Nernst, etc.).

The planned form for the term is like this:

div( -D Q u grad( v ) / ( R v^2 ) ),

which is the same as

div( D Q u grad( 1/v ) / R )

The constants D, Q, and R can be adjusted to suit various types of physics.

friedmud commented 10 years ago

This seems a bit too physics like to go directly in to MOOSE. Are you planning on adding this to one of the modules? This type of thing might fit well in modules/misc

I'm willing to be convinced that this should be right in MOOSE though ;-)

friedmud commented 10 years ago

Let me be clear here... this is definitely a welcome addition to MOOSE... I was just trying to suggest that it might fit under "modules" and not directly in "framework"

:smile:

shanestafford commented 10 years ago

I do currently have it in modules/misc. It should probably live alongside other mass/heat/magnetism transport classes, but PrimaryDiffusion lives in modules/chemical_reactions while CoefDiffusion lives in modules/misc. So I put it in misc because I thought that at some point PrimaryDiffusion should be merged with CoefDiffusion (they differ only by a minor detail) and the result should live in misc.

permcody commented 10 years ago

Thanks Shane, As a team we need to figure out what to do with misc. I don't want it to be a dumping ground for misfit kernels but that's currently what it looks like. I've been tossing around the idea of making a common module in modules that all other modules will use automatically. RIght now we have to put kernels in MOOSE if we want to use them everywhere but if we had a common module in modules, that might suite us better.

On Wed, Jun 18, 2014 at 7:46 AM, Shane Stafford notifications@github.com wrote:

I do currently have it in modules/misc. It should probably live alongside other mass/heat/magnetism transport classes, but PrimaryDiffusion lives in modules/chemical_reactions while CoefDiffusion lives in modules/misc. So I put it in misc because I thought that at some point PrimaryDiffusion should be merged with CoefDiffusion (they differ only by a minor detail) and the result should live in misc.

— Reply to this email directly or view it on GitHub https://github.com/idaholab/moose/issues/3392#issuecomment-46437100.