CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Community Contributions (https://www.cfd-online.com/Forums/openfoam-community-contributions/)
-   -   [Other] laserbeamFoam: laser ray tracing in openfoam (https://www.cfd-online.com/Forums/openfoam-community-contributions/245213-laserbeamfoam-laser-ray-tracing-openfoam.html)

tom_flint2012 September 21, 2022 11:11

laserbeamFoam: laser ray tracing in openfoam
 
Hi everyone,

If anyone is interested in ray-tracing implementations in OpenFoam. We have just released a solver we developed for simulating laser-substrate interaction. The solver is capable of simulating fusion and vapourisation state transitions induced through the application of a laser heat source.

In this work the laser beam is discretised into a series of 'Rays' that are tracked through the domain and multiple reflections they may have. This solver should be of interest to anyone looking at laser-powder bed fusion processes or laser welding/drilling applications.

The code is available here:

https://github.com/micmog/LaserbeamFoam

We are hoping to have the code published in SoftwareX, and have just submitted the manuscript there today.

We hope the code is interesting to the community.

All the best,

Tom

nixiaonan October 26, 2022 02:29

May I ask if this solver can calculate the melting of more than two kinds of mixed pa
 
Quote:

Originally Posted by tom_flint2012 (Post 836251)
Hi everyone,

If anyone is interested in ray-tracing implementations in OpenFoam. We have just released a solver we developed for simulating laser-substrate interaction. The solver is capable of simulating fusion and vapourisation state transitions induced through the application of a laser heat source.

In this work the laser beam is discretised into a series of 'Rays' that are tracked through the domain and multiple reflections they may have. This solver should be of interest to anyone looking at laser-powder bed fusion processes or laser welding/drilling applications.

The code is available here:

https://github.com/micmog/LaserbeamFoam

We are hoping to have the code published in SoftwareX, and have just submitted the manuscript there today.

We hope the code is interesting to the community.

All the best,

Tom

May I ask if this solver can calculate the melting of more than two kinds of mixed particle materials? I need to calculate the melting of mixed particle. I would be very grateful if you could help me

tom_flint2012 October 29, 2022 15:07

Hi,

This solver is just for 2 components, the gas phase and a metallic phase that can have the the properties of an alloy, but no multi-component advection diffusion equations are solved.

In the next version of the solver I was going to extend to multi-component substrates like you may see I have done in some of my published papers.

Hopefully I’ll get the multi-component code released in the next 6 months.

nixiaonan October 29, 2022 22:26

Quote:

Originally Posted by tom_flint2012 (Post 838445)
Hi,

This solver is just for 2 components, the gas phase and a metallic phase that can have the the properties of an alloy, but no multi-component advection diffusion equations are solved.

In the next version of the solver I was going to extend to multi-component substrates like you may see I have done in some of my published papers.

Hopefully I’ll get the multi-component code released in the next 6 months.

Okay, that's great. I'm looking forward to your work

nixiaonan November 15, 2022 07:40

icoReactingMultiphaseInterFoam
 
Quote:

Originally Posted by tom_flint2012 (Post 838445)
Hi,

This solver is just for 2 components, the gas phase and a metallic phase that can have the the properties of an alloy, but no multi-component advection diffusion equations are solved.

In the next version of the solver I was going to extend to multi-component substrates like you may see I have done in some of my published papers.

Hopefully I’ll get the multi-component code released in the next 6 months.

Good evening

For the calculation of multicomponent materials, I think can refer to solver icoReactingMultiphaseInterFoam, it can calculate laser melting, but it's difficult to convergence. So look forward to your new solver.

tom_flint2012 January 21, 2023 03:55

Paper
 
Here is the published SoftwareX paper with an additional validation case at the end for anyone interested.

https://authors.elsevier.com/sd/arti...52711022002175

Lollum April 26, 2023 11:07

Thank you Tom, very interesting work!
I am working with the particle models included in OF, it would be interesting to see how the two can combine.

tom_flint2012 December 4, 2023 10:48

laserbeamFoam - V2
 
Hi everyone,

if anyone is interested, we just released the multi-component version of laserbeamFoam on the repository.

You can use this for simulating dissimilar welding with M-components in the metallic substrate. The diffusion is specified through diffusion coefficients between the appropriate phase pairs and interface compression between the immiscible phases.

https://github.com/micmog/LaserbeamF...ilar_laser.png

http://github.com/micmog/LaserbeamFo...ges/Powder.png

susht December 9, 2023 21:28

Hi Thomas,

Thank you for sharing the code. Would it be possible to model the vapor phase with the interFOAM that you have used since it is two phase?

Thank you.

tom_flint2012 December 13, 2023 07:46

Hi,

so not with this code. This code uses the phenomenological recoil pressure approach. The phases are metallic ones and non-condensing background gas.

I have another code that is not released yet where we explicitly capture the vapourisation and condensation between the liquid and vapour metallic components too. You can find these publications here:

https://doi.org/10.1016/j.ijheatmass...er.2023.124262

https://doi.org/10.1016/j.ijheatmass...er.2022.122985

This approach, because it properly captures the map/cond transition, captures the volumetric dilation and massive velocity jump (Otto and Zenz just published something similar too in computers and fluids with a full compressible treatment).
Basically if you do these high fidelity approaches your tilmestep becomes prohibitively small. We did some analysis and found that for most cases where the vapourisation doesn't dominate it's more tractable to use this div(U)=0 approach so that's what we've focussed on with these code releases.

When I get time, and if enough people are using the laserbeamfoam repository I'll add the proper density jump, higher fidelity, code too. I just need to get some more publications out with that first as it took me a very long time to implement properly. I'll get round to releasing that in the next few years I would have thought. The goal is to release everything open-source, it's just finding the time around other commitments that is difficult; so I try and release the most useful tools first :)

Let me know if you have more questions. Happy to answer and provide context.

All the best,

Tom

LazyLaser December 17, 2023 15:26

laserbeamFoam Plate3D Tutorial
 
Hi,

Thank you for sharing this exciting project. After installing and testing laserbeamFoam on my PC, I encountered no issues with the Plate2D tutorial. However, when attempting the Plate3D tutorial, I encountered a fatal IO error: "keyword poly_kappa is undefined in dictionary: physicalProperties.metal". Do you have any suggestions for resolving this situation?

Thank you once again for providing this excellent simulation.

Best regards,

tom_flint2012 December 20, 2023 17:18

Hi,

I must not have updated that example once I added the polynomial properties functionality.

It's sating that the poly_kappa and cp are not defined, you can copy these from the transport properties of the tutorial that did run.

Hope that helps

LazyLaser December 26, 2023 10:12

Some Questions
 
I appreciate your guidance in my previous inquiries. I have successfully conducted simulations, focusing on laser drilling scenarios for given laser and material properties. As I continue to delve into this field, I am interested in exploring various cases by altering laser and material properties to test the simulation results with my experiments. I am now seeking guidance on how to calculate the total material removed during the laser drilling process. Could you provide insights or direct me to relevant resources that elaborate on effective methodologies for quantifying the overall material removal in your code?

Also, I encountered a problem when decreasing the value of HS_a, which I understand to be the beam diameter. It seems that, with this adjustment, heat deposition on the substrate is not occurring as anticipated. I suspect there might be a crucial detail I am overlooking.

Sorry if my questions are boring or have simple solutions that I cannot detect as I'm new in the numerical modeling field. But I think these kind of questions will be very helpful for the future community of laserbeamFoam.

Best regards,

LazyLaser January 3, 2024 13:13

Steady State Solution in laserbeamFoam
 
Is there a method to control the number of pulses in a simulation? I aim to observe the steady-state solution after a specific number of pulses, say 10, to analyze the resulting hole structure.

I tried to change the simulation end time to 0.5s and after 0.25s had elapsed, I stop the code, set the HS_Q to 0 (effectively disabling the heat source), and resumed the simulation from the time 0.25s. However, the molten pool solidifies in an unexpected wavy geometry, not U shaped.

Also, is there a way to change pulse duration in the code? I want to simulate a ns laser, but I cannot arrange the pulse duration from the LaserProperties and it is originally taken as 0.01s as far as I understand.

I will continue to write my experiences with the code.

Best,


All times are GMT -4. The time now is 20:55.