Emissivity as a function of another variable

General discussion about Elmer
Post Reply
pilafa
Posts: 56
Joined: 17 Apr 2012, 00:33
Antispam: Yes
Location: Barcelona

Emissivity as a function of another variable

Post by pilafa »

Hi,

I want to define temperature dependent material properties.
It's working find with with some properties, but not with the emissivity.

This is find:

Code: Select all

   density = Variable Temperature
     Real
       0.0  0.28
       0.01 0.28
       0.1  0.93
       1.0  0.93
     End     
...but not this:

Code: Select all

   Emissivity = Variable Temperature
     Real
       0.0  0.28
       0.01 0.28
       0.1  0.93
       1.0  0.93
     End     
it returns:

Code: Select all

ERROR:: ListGetReal:  Can't find INDEPENDENT variable:[temperature]for dependent variable:[Emissivity]
Any reason?

Thanks
Pierre
julien givernaud
Posts: 86
Joined: 18 Nov 2014, 18:18
Antispam: Yes

Re: Emissivity as a function of another variable

Post by julien givernaud »

Hi Pifala,

Strange, it should works. I have already done emissivity = f(T) with MATC and table function.

Best regards

Julien
mzenker
Posts: 1999
Joined: 07 Dec 2009, 11:49
Location: Germany

Re: Emissivity as a function of another variable

Post by mzenker »

Hi,

could you post your sif file?

Matthias
julien givernaud
Posts: 86
Joined: 18 Nov 2014, 18:18
Antispam: Yes

Re: Emissivity as a function of another variable

Post by julien givernaud »

Hi,
I precise that I work with idealized radiations BC

Code: Select all

Material 1
...
Emissivity = Variable Temperature
Real
293.15 0.6
$Tdown 0.6$
$Tup 0.2$
3000 0.2
End

Boundary Condition 1
...
Radiation = Idealized
Radiation External Temperature = 303
End

Hope it helps

Regards

Julien
mzenker
Posts: 1999
Joined: 07 Dec 2009, 11:49
Location: Germany

Re: Emissivity as a function of another variable

Post by mzenker »

Thanks - I was thinking that the OP (Pierre) might post his entire sif file so that we can see in what context the Emissivity is used etc.

Matthias
pilafa
Posts: 56
Joined: 17 Apr 2012, 00:33
Antispam: Yes
Location: Barcelona

Re: Emissivity as a function of another variable

Post by pilafa »

Hi,

Thanks for your help.

I am working with radiation between surfaces, so I use "Radiation = Diffuse Gray".

Here is a simplified version of my .sif, but that still produces this error:

Code: Select all

Header
  CHECK KEYWORDS Warn
  Mesh DB "." "."
  Include Path ""
  Results Directory ""
End

! *******************************************
! SIMULATION SET-UP
! *******************************************


Simulation
  Max Output Level = 5
  Coordinate System = Cartesian
  Coordinate Mapping(3) = 1 2 3

  Steady State Max Iterations = 1
  Output Intervals = 1
  Solver Input File = case.sif
  Post File = case.ep

  !Simulation Type = Steady state
  Simulation Type = String Transient
  Timestepping Method = String BDF
  BDF Order = Integer 1
  Timestep Intervals(1) = Integer 9515
  Timestep Sizes(1) =        Real 0.0014
  !Output Intervals(1) = Integer   10
  
End

Constants
  Gravity(4) = 0 -1 0 9.82
  Stefan Boltzmann = 5.67e-08
  Permittivity of Vacuum = 8.8542e-12
  Boltzmann Constant = 1.3807e-23
  Unit Charge = 1.602e-19
End


! *******************************************
! BODIES
! *******************************************

Body 1
  Name = "LAMP"
  Target Bodies(1) = 1
  Equation = 1
  Material = 1
  Body Force = 1
  Initial condition = 1
End

Body 2
  Name = "WATER_FILM"
  Target Bodies(1) = 11
  Equation = 1
  Material = 2
  Initial condition = 1
End

Body 3
  Name = "PLASTI_FILM"
  Target Bodies(1) = 6
  Equation = 1
  Material = 3
  Initial condition = 1
End

! *******************************************
! SOLVERS
! *******************************************

Solver 1
  Equation = Heat Equation
  Procedure = "HeatSolve" "HeatSolver"
  Variable = Temperature
  Exec Solver = Always
  Stabilize = True
  Bubbles = False
  Lumped Mass Matrix = False
  Optimize Bandwidth = True
  Steady State Convergence Tolerance = 1.0e-5
  Nonlinear System Convergence Tolerance = 1.0e-7
  Nonlinear System Max Iterations = 1 !OJO: Force only 1 T interation per time step. "Explicit"
  Nonlinear System Newton After Iterations = 3
  Nonlinear System Newton After Tolerance = 1.0e-3
  Nonlinear System Relaxation Factor = 1
  Linear System Solver = Iterative
  Linear System Iterative Method = BiCGStab
  Linear System Max Iterations = 1!500 !OJO: 
  Linear System Convergence Tolerance = 1.0e-10
  Linear System Preconditioning = ILU0
  Linear System ILUT Tolerance = 1.0e-3
  Linear System Abort Not Converged = False
  Linear System Residual Output = 1
  Linear System Precondition Recompute = 0
  
  !Nonlinear Update Exported Variables = True
  
  Exported Variable 1 = vtest 
  Exported Variable 2 = Pw 
  Exported Variable 3 = Pa
  Exported Variable 4 = Tdp
  Exported Variable 5 = drho
  Exported Variable 6 = lh
  Exported Variable 7 = meva
  Exported Variable 8 = rho
  Exported Variable 9 = tfrac
  Exported Variable 10 = rhoold
  Exported Variable 11 = thfilm
  Exported Variable 12 = Emis_water
  Exported Variable 13 = thfilmold
  Exported Variable 14 = dthick
  Exported Variable 15 = hair
  Exported Variable 16 = Rey
  Update Exported Variables = Logical True
  Nonlinear Update Exported Variables = Logical True
  
End

! VTU
Solver 2 

 Exec interval(1) =  100
 
 Equation = String "ResultOutput"
 Procedure = File "ResultOutputSolve" "ResultOutputSolver"
 Output File Name = File "IR_test." !or any other output file name of your choice
 Output Format = String "vtu"
 Vtu Format = Logical True
 Binary Output = Logical True
 Exec Solver = String "after timestep"
 Save Geometry Ids = Logical True
 Calculate Loads=True
End 

! *******************************************
! EQUATIONS
! *******************************************

Equation 1
  Name = "Equation 1"
  Active Solvers(1) = 1
End


! *******************************************
! MATERIALS
! *******************************************

Material 1
  Name = "Silicon (solid)"
  Heat Conductivity = 2
  Heat Capacity = 555.8
  Density = 2330.0
End


Material 2
  Name = "liquid water (generic)"
  Heat Conductivity = 0.58
  Heat Capacity = 4183.0
  Density = 980.0  
End

Material 3
  Name = "PET"
  Heat Conductivity = 0.3
  Heat Capacity = 1250
  Density = 1380.0
End

! *******************************************
! BODY FORCES
! *******************************************
Body Force 1
  Temperature = Real 673.0
End



! *******************************************
! INITIAL CONDITIONS 
! *******************************************

Initial Condition 1
  Temperature = 298.0
End

! *******************************************
! BOUNDARY CONDITIONS
! *******************************************

! emmiting surface of lamp 
Boundary Condition 1
   Target Boundaries(1) = 3
   
   !Radiation:
   Radiation Boundary Open = Logical True
   Radiation = Diffuse Gray
   Radiation External Temperature = 298.0
   Emissivity=0.95
   
End


! Upper surface of water
Boundary Condition 2
   Target Boundaries(1) = 14
   
   !Radiation: 
   Radiation Boundary Open = Logical True
   Radiation = Diffuse Gray
   Radiation External Temperature = 298
   
   !Emissivity=0.605

    Emissivity = Variable Temperature 
    Real
      298.0   0.28
      315.0 0.28  
      350.0  0.93 
      500.0 0.93
    End      
   
   !Convection
    Heat Transfer Coefficient = Variable hair; Real MATC "tx"
    External Temperature = Real 298.0
   
   Heat Flux BC = Logical True
   Heat Flux = -100.0 
End

! Lower surface of plastic 
Boundary Condition 3 
  Target Boundaries(1) = 8
  
  !Convection
  Heat Transfer Coefficient = Variable hair; Real MATC "tx"
  External Temperature = Real 298.0
  
End
Toward the end of the file, in "Boundary Condition 2", changing

Code: Select all

Emissivity=0.605
by

Code: Select all

    Emissivity = Variable Temperature 
    Real
      298.0   0.28
      315.0 0.28  
      350.0  0.93 
      500.0 0.93
    End      
will return :
ERROR:: ListGetReal: Can't find INDEPENDENT variable:[temperature]for dependent variable:[Emissivity]
Maybe diffuse gray radiation is not compatible with temperature dependent emissivity, but I don't see any physical reason for that.

Thanks again,
Pierre
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Emissivity as a function of another variable

Post by raback »

Hi Pierre

There are some historical layers.

Initially the emissivity was a constant property of the boundary. However, this was problematic since sometimes it was hard to give to specify the direction of the normal. Later a functionality was added that enable that the emissivity is found from the material section and the normal is defined such that it points from the material where the emissivity was found outwards. At the same time the emissivity was made a variable.

So if you want to use the latter approach you should move the emissity specification from BC to Material section.

-Peter
arved
Posts: 27
Joined: 06 Aug 2020, 15:05
Antispam: Yes

Re: Emissivity as a function of another variable

Post by arved »

Hi Pierre, hi Peter,

I have the same problem with a temperature-dependent emissivity in a surface-to-surface radiation case. I used the "radiation" Elmer test case with a quite recent Elmer version on Windows for testing and found that idealized radiation works, surface-to-surface radiation does not work. It fails with the following output:

Code: Select all

...
ViewFactors: Saving view factors in ascii mode
ViewFactors: *** ALL DONE ***
RadiationFactors: Loading view factors from ascii file: ./radiation/ViewFactors.dat
RadiationFactors: Computing factors...
RadiationFactors: View factors filling (%)               3.9908E+01
ListParseStrToVars: Parsed variable 1 of temperature
ERROR:: ListParseStrToVars: Can't find independent variable:[temperature] for dependent variable:[Emissivity]
STOP 1
Attached you can find the input files for both cases.

Is there any possibility to run a surface-to-surface radiation case with temperature-dependent emissivity?

Best regards
Arved
Attachments
radiation-ideal_eps(T)-in-material.sif
(2.24 KiB) Downloaded 40 times
radiation_eps(T)-in-material.sif
(2.19 KiB) Downloaded 42 times
radiation.grd
(861 Bytes) Downloaded 36 times
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Emissivity as a function of another variable

Post by raback »

Hi

It seems that the code does not know that it will depend on temperature and at initialization temperature does not exist.

You should give keyword:

Code: Select all

Update Gebhardt Factors = True
Why are the factors needed before temperature is available? The Gebhardt factors need to be defined in order to know the topology of the CRS matrix. This is assumed to remain constant (=0.5) during the simulation whereas the Gebhardt factor values are updated within iteration.

There are also many other keywords here affecting tolerances etc.when Gebhardt factors are updated.

For radiation it is a good idea to provide a reasonable initial guess.

-Peter
arved
Posts: 27
Joined: 06 Aug 2020, 15:05
Antispam: Yes

Re: Emissivity as a function of another variable

Post by arved »

Hi Peter,

thanks a lot, with 'Update Gebhardt Factors = True' it works well.

Best regards
Arved
Post Reply