Particles handled by AcuTrace
Hi, experts.
I have the following two questions.
(1) In AcuTrace, the volume of a particle is used to calculate the external force acting on the particle, but what values of the flow velocity and pressure (calculated by AcuSolve) are used for calculating the particle behavior? For example, when a particle exists on some meshes near a wall with very fine meshes, the flow velocity and pressure for simulating the particle behavior are the average value obtained from some meshes where the particle exists?
(2) The AcuTrace manual (https://2022.help.altair.com/2022.3/hwcfdsolvers/acusolve/topics/acusolve/finite_mass_acutrace_com_ref.htm) says that the default value of constant_gravity is 0, so the users must set it by themselves, but I can't find the constant_gravity item in the *.tin file that was output after setting up AcuTrace for a model that has been AcuSolve run. How do I set it?
Best Answer
-
1 - The flow forces acting on the particle are local to the current position of the particle - consistent with the current local flowfield. That is for particles with mass. Massless particles simply follow the flowfield.
2- You would need to manually edit the .tin file in the FINITE_MASS command to add the constant_gravity parameter and vector/setting - like
constant_gravity = { 0.0, -9.80665, 0.0 }
1
Answers
-
1 - The flow forces acting on the particle are local to the current position of the particle - consistent with the current local flowfield. That is for particles with mass. Massless particles simply follow the flowfield.
2- You would need to manually edit the .tin file in the FINITE_MASS command to add the constant_gravity parameter and vector/setting - like
constant_gravity = { 0.0, -9.80665, 0.0 }
1 -
acupro_21778 said:
1 - The flow forces acting on the particle are local to the current position of the particle - consistent with the current local flowfield. That is for particles with mass. Massless particles simply follow the flowfield.
2- You would need to manually edit the .tin file in the FINITE_MASS command to add the constant_gravity parameter and vector/setting - like
constant_gravity = { 0.0, -9.80665, 0.0 }
Thank you for your reply.
1- Your information is helpful for me. I am conducting the simulation of particles with mass. For my understanding, your explanation means that the mesh flow field is directly applied to the particle behavior. So how is it calculated when the particle diameter is much larger than the mesh size? I suspect that the following (A- or B-) is the possible case for the interrelationship between particles and mesh size, but is any of them correct? If none of them are correct, I would like you to explain the relationship between the mesh and particle sizes, and how to apply the flow field to the particles.
A- The flow field of the mesh where the particle's center coordinates are located is applied, meaning that the particle is essentially treated as a "point" with no volume.
B- In the first place, it is not assumed that the particle will be larger than the mesh in AcuTrace. In other words, the mesh size needs to be set to be sufficiently larger than the particle size.2- I can't find the "constant_gravity" item in "FINITE_MASS" in the *.tin file. For reference, attached the contents of *.tin file. Could you teach me the reason for this. Is there any mode settings required to set "constant_gravity"?
<Contents of *.tin file>
# +----------------------------------------------------------------------+
# | This is AcuTrace input file. |
# | |
# | Generated by: HyperworksCFD 2022.2 |
# +----------------------------------------------------------------------+
# +----------------------------------------------------------------------+
# | Equation |
# +----------------------------------------------------------------------+EQUATION {
particle = finite_mass
}# +----------------------------------------------------------------------+
# | Flow Field |
# +----------------------------------------------------------------------+FLOW_FIELD {
flow_field_type = dynamic
from_problem = "Tube"
from_directory = "/work/gg38/g38000/ACUSOLVE/240825_U400+240_tryH850-p/ACUSIM.DIR"
from_run = 1
mesh_motion = on
}# +----------------------------------------------------------------------+
# | Auto Solution Strategy |
# +----------------------------------------------------------------------+AUTO_SOLUTION_STRATEGY {
max_time = 50
max_segments = 10000
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS {
drag_law_type = standard_drag_law
drag_coefficient_model = standard
drag_coefficient = 0
viscosity_model = constant
constant_viscosity = 0.001
density_model = constant
constant_density = 1000
wall_type = reflect
}# +----------------------------------------------------------------------+
# | Trace Output |
# +----------------------------------------------------------------------+TRACE_OUTPUT {
active = on
output_frequency = 1
flow_state_data = off
flow_gradient_data = off
}# +----------------------------------------------------------------------+
# | Time Cut Output |
# +----------------------------------------------------------------------+TIME_CUT_OUTPUT {
active = on
time_cut_type = "time_interval"
time_cut_start_time = 0
time_cut_stop_time = 50
time_cut_interval = 0.01
flow_state_data = off
flow_gradient_data = off
}# +----------------------------------------------------------------------+
# | Seeds |
# +----------------------------------------------------------------------+PARTICLE_SEED( "p_1.6" ) {
seed_coordinates = Read("/work/gg38/g38000/ACUSOLVE/240825_U400+240_tryH850-p/Tube_0.seeds")
time = 0
time_type = emission_times
emission_time_type = time_interval
emission_start_time = 1
emission_stop_time = 1.01
emission_time_interval = 0.01
constant_density = 1600
constant_radius = 0.00015
}# +----------------------------------------------------------------------+
# | Seeds |
# +----------------------------------------------------------------------+PARTICLE_SEED( "p_1.0" ) {
seed_coordinates = Read("/work/gg38/g38000/ACUSOLVE/240825_U400+240_tryH850-p/Tube_1.seeds")
time = 0
time_type = emission_times
emission_time_type = time_interval
emission_start_time = 1
emission_stop_time = 1.01
emission_time_interval = 0.01
constant_density = 1000
constant_radius = 0.00015
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS_BOUNDARY_CONDITION( "Stopping Wall" ) {
wall_type = stop
constant_wall_et = 1
constant_wall_en = 1
particle_surface = "Slip"
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS_BOUNDARY_CONDITION( "Stopping Wall 1" ) {
wall_type = stop
constant_wall_et = 1
constant_wall_en = 1
particle_surface = "Outlet"
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS_BOUNDARY_CONDITION( "Reflecting Wall" ) {
wall_type = reflect
constant_wall_et = 1
constant_wall_en = 1
particle_surface = "Wall"
}# +----------------------------------------------------------------------+
# | Run |
# +----------------------------------------------------------------------+RUN {
}0 -
K. Yamamoto said:
Thank you for your reply.
1- Your information is helpful for me. I am conducting the simulation of particles with mass. For my understanding, your explanation means that the mesh flow field is directly applied to the particle behavior. So how is it calculated when the particle diameter is much larger than the mesh size? I suspect that the following (A- or B-) is the possible case for the interrelationship between particles and mesh size, but is any of them correct? If none of them are correct, I would like you to explain the relationship between the mesh and particle sizes, and how to apply the flow field to the particles.
A- The flow field of the mesh where the particle's center coordinates are located is applied, meaning that the particle is essentially treated as a "point" with no volume.
B- In the first place, it is not assumed that the particle will be larger than the mesh in AcuTrace. In other words, the mesh size needs to be set to be sufficiently larger than the particle size.2- I can't find the "constant_gravity" item in "FINITE_MASS" in the *.tin file. For reference, attached the contents of *.tin file. Could you teach me the reason for this. Is there any mode settings required to set "constant_gravity"?
<Contents of *.tin file>
# +----------------------------------------------------------------------+
# | This is AcuTrace input file. |
# | |
# | Generated by: HyperworksCFD 2022.2 |
# +----------------------------------------------------------------------+
# +----------------------------------------------------------------------+
# | Equation |
# +----------------------------------------------------------------------+EQUATION {
particle = finite_mass
}# +----------------------------------------------------------------------+
# | Flow Field |
# +----------------------------------------------------------------------+FLOW_FIELD {
flow_field_type = dynamic
from_problem = "Tube"
from_directory = "/work/gg38/g38000/ACUSOLVE/240825_U400+240_tryH850-p/ACUSIM.DIR"
from_run = 1
mesh_motion = on
}# +----------------------------------------------------------------------+
# | Auto Solution Strategy |
# +----------------------------------------------------------------------+AUTO_SOLUTION_STRATEGY {
max_time = 50
max_segments = 10000
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS {
drag_law_type = standard_drag_law
drag_coefficient_model = standard
drag_coefficient = 0
viscosity_model = constant
constant_viscosity = 0.001
density_model = constant
constant_density = 1000
wall_type = reflect
}# +----------------------------------------------------------------------+
# | Trace Output |
# +----------------------------------------------------------------------+TRACE_OUTPUT {
active = on
output_frequency = 1
flow_state_data = off
flow_gradient_data = off
}# +----------------------------------------------------------------------+
# | Time Cut Output |
# +----------------------------------------------------------------------+TIME_CUT_OUTPUT {
active = on
time_cut_type = "time_interval"
time_cut_start_time = 0
time_cut_stop_time = 50
time_cut_interval = 0.01
flow_state_data = off
flow_gradient_data = off
}# +----------------------------------------------------------------------+
# | Seeds |
# +----------------------------------------------------------------------+PARTICLE_SEED( "p_1.6" ) {
seed_coordinates = Read("/work/gg38/g38000/ACUSOLVE/240825_U400+240_tryH850-p/Tube_0.seeds")
time = 0
time_type = emission_times
emission_time_type = time_interval
emission_start_time = 1
emission_stop_time = 1.01
emission_time_interval = 0.01
constant_density = 1600
constant_radius = 0.00015
}# +----------------------------------------------------------------------+
# | Seeds |
# +----------------------------------------------------------------------+PARTICLE_SEED( "p_1.0" ) {
seed_coordinates = Read("/work/gg38/g38000/ACUSOLVE/240825_U400+240_tryH850-p/Tube_1.seeds")
time = 0
time_type = emission_times
emission_time_type = time_interval
emission_start_time = 1
emission_stop_time = 1.01
emission_time_interval = 0.01
constant_density = 1000
constant_radius = 0.00015
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS_BOUNDARY_CONDITION( "Stopping Wall" ) {
wall_type = stop
constant_wall_et = 1
constant_wall_en = 1
particle_surface = "Slip"
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS_BOUNDARY_CONDITION( "Stopping Wall 1" ) {
wall_type = stop
constant_wall_et = 1
constant_wall_en = 1
particle_surface = "Outlet"
}# +----------------------------------------------------------------------+
# | Finite Mass |
# +----------------------------------------------------------------------+FINITE_MASS_BOUNDARY_CONDITION( "Reflecting Wall" ) {
wall_type = reflect
constant_wall_et = 1
constant_wall_en = 1
particle_surface = "Wall"
}# +----------------------------------------------------------------------+
# | Run |
# +----------------------------------------------------------------------+RUN {
}You would add the constant_gravity parameter into that existing FINITE_MASS you show above - just insert another line.
For AcuTrace, the particles need to be much smaller than the mesh element size. For larger particles you probably need to move to EDEM.
0 -
acupro_21778 said:
You would add the constant_gravity parameter into that existing FINITE_MASS you show above - just insert another line.
For AcuTrace, the particles need to be much smaller than the mesh element size. For larger particles you probably need to move to EDEM.
(1) Are there any guidelines or standards for particle size relative to mesh size in AcuTrace?
(2) When the particle size is as large as the mesh size or is larger than the mesh size in AcuTrace, what adverse effects will occur in the simulation analysis?
0 -
K. Yamamoto said:
(1) Are there any guidelines or standards for particle size relative to mesh size in AcuTrace?
(2) When the particle size is as large as the mesh size or is larger than the mesh size in AcuTrace, what adverse effects will occur in the simulation analysis?
For AcuTrace the particle diameter should be much smaller than the mesh element size.
0