|
[Sponsors] |
August 2, 2020, 05:46 |
time derivative of laplacian
|
#1 |
New Member
Max
Join Date: Jan 2017
Posts: 9
Rep Power: 9 |
I have a function I can't implement:
a -- is a constant in [m2/s], which I defined via external dictionary (lookup) c -- is a constant in [s], which I defined via external dictionary (lookup) T -- is temperature in [K] Laplacian of T should yield [K/m2] and should yield [K], which is a scalar field. I can't understand why I can't get a time derivative from it. I've tried fvm::ddt(c * fvm::laplacian(a,T)), but got an error: no matching function for call to ‘Foam::GeometricField::GeometricField(Foam::tmp >)’ |
|
August 2, 2020, 17:06 |
|
#2 |
Senior Member
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 16 |
Quote:
fvm::ddt(fvc::laplacian(... Coming to your interpretation problem, you are mixing mathematical notations. The leibniz notation (d/dt) with the vector (nabla, delta) notation for derivatives. Im betting the Delta T in the term above means "temperature difference", not "second order derivative of..."' |
|
August 2, 2020, 17:22 |
|
#3 |
New Member
Max
Join Date: Jan 2017
Posts: 9
Rep Power: 9 |
Interesting thing:compiles OK:
volScalarField lap(c * fvc::laplacian(a,T)); fvScalarMatrix TEqn (fvm::ddt(T) - fvm::ddt(lap) - fvm::laplacian(a,T) == 0); but solution fails with the following error: incompatible fields for operation [T] - [(c*laplacian(a,T))] compilation error (no matching function for call to ‘ddt(Foam::tmp >)’): fvScalarMatrix TEqn (fvm::ddt(T) - fvm::ddt(c * fvc::laplacian(a,T))) - fvm::laplacian(a,T) == 0); ----------------------------------- As for notation: This is a part of modified Fourier equation: where a -- thermal diffusivity [m2/s] if one set c=0 s, then will get simple heat equation |
|
August 3, 2020, 16:21 |
|
#4 |
Senior Member
Michael Alletto
Join Date: Jun 2018
Location: Bremen
Posts: 616
Rep Power: 16 |
did you try:
fvc::ddt(c * fvc::laplacian(a,T))) I think there is no implicit operator implement in openfaom for what you want to do |
|
August 3, 2020, 16:35 |
|
#5 |
New Member
Max
Join Date: Jan 2017
Posts: 9
Rep Power: 9 |
I did.. same error.
a somewhat solution is that c * fvc::laplacian(a,fvc::ddt(T)) or c * fvc::ddt(volScalarField("lap",fvc::laplacian(a,T)) ) Both compile ok and simulation runs well, but this term doesn't affect solution at all. Seems like Last edited by nikitin-pro; August 3, 2020 at 18:07. |
|
Tags |
laplacian operator, openfoam, time derivative |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
courant number increases to rather large values | 6863523 | OpenFOAM Running, Solving & CFD | 22 | July 6, 2023 00:48 |
simpleFoam error - "Floating point exception" | mbcx4jc2 | OpenFOAM Running, Solving & CFD | 12 | August 4, 2015 03:20 |
How to write k and epsilon before the abnormal end | xiuying | OpenFOAM Running, Solving & CFD | 8 | August 27, 2013 16:33 |
dynamic Mesh is faster than MRF???? | sharonyue | OpenFOAM Running, Solving & CFD | 14 | August 26, 2013 08:47 |
mixerVesselAMI2D's mass is not balancing | sharonyue | OpenFOAM Running, Solving & CFD | 6 | June 10, 2013 10:34 |