|
[Sponsors] |
Thermal conductivity as function of temperature |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
October 10, 2012, 07:32 |
Thermal conductivity as function of temperature
|
#1 |
New Member
magazoni
Join Date: Jul 2012
Posts: 11
Rep Power: 14 |
Hi everyone,
I'm trying to make a test with the solver laplacianFoam making the thermal conductivity as function of temperature. I'm doing something like that: fvScalarMatrix Teqn ( fvm::ddt(rho, T) - fvm::laplacian(k_T(T)/Cp, T) ); Teqn.solve(); } My idea is create a function to calculate the thermal conductivity: dimensionedScalar k_T(volScalarField T) { dimensionedScalar k1 ( "k1", dimensionSet(1,1,-3,-2,0,0,0), -0.0691734413 ); dimensionedScalar k2 ( "k2", dimensionSet(1,1,-3,-1,0,0,0), 421.0792245378 ); volScalarField k; k=k1*T+k2; return k; } But it's not working. How can I do it using a function? Thanks, Best regards, Felipe Magazoni |
|
October 10, 2012, 08:42 |
|
#2 | |
Senior Member
Join Date: Jan 2010
Location: Stuttgart
Posts: 150
Rep Power: 16 |
Hi Felipe,
the following code should give you an idea how to do it: Quote:
Don't forget to define your variables in the "createFields" file. Kind regards Chrisi |
||
December 31, 2012, 10:19 |
|
#3 |
New Member
Romain
Join Date: Jun 2010
Location: Lyon
Posts: 28
Rep Power: 16 |
hello Chrisi,
I am looking to implement something a bit similar, I would like to have a value 'a' for my thermal conductivity if the temperature is under a certain value, and a value 'b' for my thermal conductivity if the temperature is above the value. Something like, Code:
if (cz.name() == "s-oc") { forAll(cells, iCells) { const label cellId = cells[iCells]; const scalar& cellT = T[cellId]; cp[cellId] = 380.68 + cellT * (0.35536 - 0.00012713 * cellT); if (cellT<273.15) { K[cellId] = 10; } else { K[cellId] = 100; } rho[cellId] = 7920; } } Thanks, |
|
January 5, 2013, 11:54 |
|
#4 |
Senior Member
Join Date: Jan 2010
Location: Stuttgart
Posts: 150
Rep Power: 16 |
Hallo Nakor,
at the minute for me it seems that your code should work. Kind regards, Chrisi |
|
January 6, 2013, 12:52 |
|
#5 |
Senior Member
Matvey Kraposhin
Join Date: Mar 2009
Location: Moscow, Russian Federation
Posts: 355
Rep Power: 21 |
I can hint a bit more elegant solution:
{ dimensionedScalar k1 (dict.lookup("k1")); dimensionedScalar k2 (dict.lookup("k2")); volScalarField k = k1*T + k2; volScalarField DT = k / Cp1; fvScalarMatrix Teqn ( fvm::ddt(rho, T) - fvm::laplacian(DT, T) ); Teqn.solve(); } |
|
May 19, 2016, 19:25 |
|
#6 |
Member
Join Date: Oct 2015
Posts: 63
Rep Power: 11 |
Hey,
I have modified the icoFoam solver to solve the energy equation by following the steps detailed in https://openfoamwiki.net/index.php/H...ure_to_icoFoam Now, I want to make the thermal diffusivity (DT) temperature dependent. Can someone tell me how to go about doing this? Where should I make the changes? Thanks!! Ram |
|
Tags |
function, laplacianfoam, property, temperature |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Simulation of a single bubble with a VOF-method | Suzzn | CFX | 21 | January 29, 2018 01:58 |
Constant velocity of the material | Sas | CFX | 15 | July 13, 2010 09:56 |
[blockMesh] Axisymmetrical mesh | Rasmus Gjesing (Gjesing) | OpenFOAM Meshing & Mesh Conversion | 10 | April 2, 2007 15:00 |
THERMAL CONDUCTIVITY FOR SOLID DOMAIN -BOUYANCY | CARL | CFX | 1 | June 9, 2006 17:44 |
Info: Short Course On Thermal Design of Electronic Equipment | Arnold Free | Main CFD Forum | 0 | August 10, 1999 11:18 |