Marangoni stress, help!!
Hi!everybody, now I will go to simulate on the heat transfer and fluid flow in the weldpool. As a boundary, I must add Marangoni stress to the weldpool surface, so Marangoni stress are expressed as follows: tau=del(sigma)=d(sigma)/dT del(T). I want to know where Marangoni stress are added? thanks in advance!
|
Re: Marangoni stress, help!!
I am working in nearly same field. I would like to know one thing. How to apply moving heat source. As specially, when you are trying to simulate 3-D problem.
My guess to your question is: Fluent calculates marngoni stress and add it on defined or calculated surface. What user need to prescribe is surface tension gradient. I am not sure, if my answere help you or not.. best luck... G |
UDF code for moving heat source
Guess I am too late to the party haha ... Incase anyone still needs the moving heat source code.
#include "udf.h" DEFINE_PROFILE(heat_source_profile, thread, position) { real x[ND_ND]; face_t f; real current_time; real Q = 1; // Define your heat source magnitude (Watts) real rx = 30e-6; // Define your desired values for rx, ry, rz (meters) real ry = 75e-6; real rz = 30e-6; real A; real vel = 4e-3; // velocity @ m/s real PI = 3.1416; real x_pos; real x_start = 0.0; // Set your desired starting position in x (m) real y_start = 0.28e-3; // Set your desired starting position in y (m) real z_start = 0.1e-3; // Set your desired starting position in z (m) real x_local, y_local, z_local; // Declare local coordinates current_time = CURRENT_TIME; A = (6 * sqrt(3) * Q) / (PI * sqrt(PI) * rx * ry * rz); x_local = 0.0; // Initialize x_local outside the loop y_local = 0.0; // Initialize y_local outside the loop z_local = 0.0; // Initialize z_local outside the loop begin_f_loop(f, thread) { F_CENTROID(x, f, thread); // Transform global coordinates to local coordinates x_local = x[0] - x_start; y_local = x[1] - y_start; z_local = x[2] - z_start; x_pos = vel * current_time; // Compute the heat source function value F_PROFILE(f, thread, position) = A * exp(-3 * (pow(x_local - x_pos, 2.) / pow(rx, 2.) + pow(y_local, 2.) / pow(ry, 2.) + pow(z_local, 2.) / pow(rz, 2.))); } end_f_loop(f, thread) } |
All times are GMT -4. The time now is 17:46. |