CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Phase depending absorption & emission model properties (https://www.cfd-online.com/Forums/openfoam-solving/224245-phase-depending-absorption-emission-model-properties.html)

hektorWartgard February 11, 2020 10:03

Phase depending absorption & emission model properties
 
Hello,

I am trying to model laser melting using OpenFOAM1912, with the icoReactingMultiphaseInterFoam solver. This solver has the radiation model laserDTRM built in.

I have managed to solve simple problems nicely, but the optical properties are significantly different in the gas (almost completely transmissive)/liquid(highly absorbing)/solid phases(highly absorbing and reflective).

Is it possible to set the absorptivity/emissivity/E to different values in different phases? Does any of the built in models support this?

I have tried looking around in the source code, but I do not quite follow the radiation models.


Any help on the topic is greatly appreciated.


EDIT: It seems that localDensityAbsorptionEmission does the trick, and it does more or less what I would expect.



Best regards
Hektor


Attachments:

radiationProperties
Code:

radiation      on;
radiationModel  laserDTRM;
solverFreq 3;

absorptionEmissionModel constantAbsorptionEmission;
    mode    "Gaussian";
    nTheta    20;
    nr    100;
    opd    0.4425;
    focalLaserPosition constant    (.0002 .00020 0.0002);
    laserDirection constant    (0 -1 0);
    focalLaserRadius        0.000025;
    laserPower            200;
    sigma                25e-6;
    //qualityBeamLaser        1.0;
    absorptivity    absorptivity    [0 -1 0 0 0 0 0] 1e5;
    emissivity      emissivity      [0 -1 0 0 0 0 0] 0.04;
    E              E              [1 -1 -3 0 0 0 0] 0;

scatterModel    none;
sootModel      none;
transmissivityModel none;

Included absorptionEmissionModels
Quote:

binaryAbsorptionEmission
constantAbsorptionEmission
greyMeanAbsorptionEmission
greyMeanSolidAbsorptionEmission
localDensityAbsorptionEmission
multiBandAbsorptioEmission
multiBandZoneAbsorptionEmission
none
wideBandAbsorptionEmission


OPFO February 18, 2020 09:29

LaserDTRM
 
2 Attachment(s)
Hi Hektor,

I am also trying to work with LaserDTRM for laser melting. Unfortunately, I don't know much about your problem, but I wonder if it is connected to a problem I am having. I also have three phases set up (gas, liquid, solid), however, the laser source will not travel through the gas phase and into the solid phase. I have attached quick snapshots from paraview. I use a simple blockmesh and then initialize the phases using setFields.

Have you also encountered this problem?

Cheers

hektorWartgard February 18, 2020 09:37

My solution has been to use the "localDensityAbsorptionEmission" absorption/emission model, there you can set the absorptivity/emissivity/E of the different phases.

The value can be set to 0 for the gas, and metals typically have around 10^8 1/m. Find good values for your material at (https://refractiveindex.info/).


The other option is to to skip the gas phase and use a boundary condition to model the laser. This will work if you have a high absorptivity and a simple geometry.

OPFO February 18, 2020 10:09

LaserDTRM
 
Hi Hektor,

Thanks for your quick reply. I'm glad you were able to figure your problem out. I'm trying to incorporate your comments, but I don't know how exactly to code in the coefficients. Here's what I have:

localDensityAbsorptionEmissionCoeffs
{
alphaNames alpha.gas;
absorptivity absorptivity [0 -1 0 0 0 0 0] 0;
emissivity emissivity [0 -1 0 0 0 0 0] 0;
E E [1 -1 -3 0 0 0 0] 0;

alphaNames alpha.liquid;
absorptivity absorptivity [0 -1 0 0 0 0 0] 0;
emissivity emissivity [0 -1 0 0 0 0 0] 0;
E E [1 -1 -3 0 0 0 0] 0;

alphaNames alpha.solid;
absorptivity absorptivity [0 -1 0 0 0 0 0] 0;
emissivity emissivity [0 -1 0 0 0 0 0] 0;
E E [1 -1 -3 0 0 0 0] 0;
}

Any insight?
Thanks in advance!

OPFO February 19, 2020 04:19

LaserDTRM
 
I think I was able to figure it out after trial and error. For anyone else interested, here's what ended up working for me:

localDensityAbsorptionEmissionCoeffs
{
alphaNames (alpha.gas alpha.liquid alpha.solid);
aCoeff (0 1e3 1e10);
eCoeff (0 0.5 0.5);
ECoeff (0 0.5 0.5);
}

Please let me know if I made any errors or left something out.

Thanks!

hektorWartgard February 28, 2020 05:50

Yes this looks correct.


All times are GMT -4. The time now is 12:08.