Tagged: ansysfluent, dpm, fluiddynamics, unsteadytracking


June 7, 2021 at 8:25 amLLhtcSubscriber
Hello everybody
I am simulating a very simple case to verify the unsteady injection file characteristics (later to be applied to a more complex scenario). This test case consists of a number of hexa elements placed in series along the main axis, where the eulerian phase equation are disabled and only the lagrangian phase is solved. The inlet and the outlet sections of the domain are treated as periodicity, the lateral sides as simmetry. At a certain time, I am injecting a particle parcel in the domain, with an assigned velocity, diameter, parcelmass, etc., where the only velocity component that is assigned is the one along the main axis (other are set to 0). Considering all this settings, parcels are injected in the domain and therefore remain there (they cannot escape, being trapped, evaporate...). The simulation is transient, with a dt=1e4s and flow is inviscid.
I am using this very simple unsteady injection file:
(z=4 13)
(x y z u v w diameter t parcelmass mass ninparcel time flowtime)
((0.0 0.00000000 5.5e02 0.0 0.0 1 3.73e05 400.0 1e11 2.12406e11 0.56349 0.0000e+00 2.0000e04) injection0:0)
At this point, if I am using the "Repeat Interval in File" in the injection panel set to 0, the injection works fine: the parcel is injected at flowtime=0.0002 s, that is the prescribed time. Then I impose "Repeat Interval in File=10e04s" and if I am not wrong I should expect that the injection file is rewinded once the periodic window (defined by the repeat interval time) is reached. For this unsteady file injection and this specif interval I should expect that considering a total simulation windows of 20e4 s means two parcels in the domain (injected at 2e04s and 12e4s): instead three parcels are tracked...
Of course I cleared the previous parcels before the test, as well I set to 0 the flowtime.
I report also the "unexpected injection" according to the console:
[...
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 1, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.0011s, time step = 11
9 more time steps
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.0011
Advancing DPM injections ....
number tracked = 2, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.0012s, time step = 12
8 more time steps
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.0012
Advancing DPM injections ....
number tracked = 3, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.0013s, time step = 13
..]
As you can see, the test case is really fundamental and I think I am doing a very dumb error, but I cannot see where it is.
Thanks in advance for any help!

June 7, 2021 at 11:28 amDrAmineAnsys EmployeeOn a dummy example does it work for me. Verify your start/stop times in the panel. Also verify the time step size used to advance the particle(s).
In my example Particle is first introduced at 0.0, my time step size is 0.001[s] and the repeat interval is set to 0.005 [s], every 0.005[s] I get the one particle injected. So my second is injected at the beginning of the 6th time step and so on..

June 7, 2021 at 12:45 pmLLhtcSubscriber@DrAmine thank you so much for your reply!
I have tried your setup: actually it works fine, as you said!
Anyway, I used your setup while changing the injection time to 0.003[s]. It should work in the same manner, but simply with a temporal shift, am I right? instead I get the same problem
See the console log for instace (in bold the issue that I am seeing):
[...
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 0, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.001s, time step = 1
9 more time steps
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 0, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.002s, time step = 2
8 more time steps
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.002
Advancing DPM injections ....
number tracked = 1, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.003s, time step = 3
7 more time steps
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.003
Advancing DPM injections ....
number tracked = 2, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.004s, time step = 4
6 more time steps
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 2, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.005s, time step = 5
5 more time steps
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 2, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.006s, time step = 6
4 more time steps
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 2, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.007s, time step = 7
3 more time steps
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.007
Advancing DPM injections ....
number tracked = 3, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.008s, time step = 8
2 more time steps
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.008
Advancing DPM injections ....
number tracked = 4, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.009000000000000001s, time step = 9
1 more time step
Updating solution at time level N...
done.
Advancing DPM injections ....
number tracked = 4, escaped = 0, aborted = 0, trapped = 0, evaporated = 0, incomplete = 0, incomplete_parallel = 0
iter time/iter
Flow time = 0.01s, time step = 10
Calculation complete.
...]
As unsteady tracking parameter I am using "Track with fluid time step", so it should be the same used to advance the flowtime. Also (see again the bold part in the log),there is a thing that is puzzling me: is the injection occurring at the beginning of the related time step? Why is reported "Injecting 1 particle parcels with mass 1e11 at t = 0.002" if I have set 3e3[s] as flowtime for the injection?
I put also some snapshot, I thought maybe could be useful to understand where I am doing wrong.
Thanks again for you help!

June 7, 2021 at 12:59 pmDrAmineAnsys EmployeeWhich time are you talking about? The time in the injection header and injection file? I still get the same behavior if I increase that time column to anything and this is expected. I am using 21R1. You can use the option STart foltime in File" to start injection after certain time elapsed: the last column in the injection file will then be used.

June 7, 2021 at 2:01 pmLLhtcSubscriberYes, I am talking about the "flowtime" column (the 13th column , as reported in the user guide). Up to now, that is the test that I reported before, I was using the 2019R1 release. I have now used also the 2019R3 and 2021R1 releases: actually it seems to work, but it is skipping the first interval (from flowtime 0 to flowtime 5e03[s]). Also, the injection time, that should be at flowtime= 3e3[s] (and all the other timesteps according to the 5e03s repetition interval, so 8e03[s],13e03[s],18e03[s],etc.), sometime occurs in the next timestep:
[...
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 0
itertime/iter
Flow time = 0.001000000047497451s, time step = 1
19 more time steps
Updating solution at time level N...
done.
itertime/iter
Flow time = 0.002000000094994903s, time step = 2
18 more time steps
Updating solution at time level N...
done.
itertime/iter
Flow time = 0.003000000026077032s, time step = 3
17 more time steps
Updating solution at time level N...
done.
itertime/iter
Flow time = 0.004000000189989805s, time step = 4
16 more time steps
Updating solution at time level N...
done.
itertime/iter
Flow time = 0.005000000353902578s, time step = 5
15 more time steps
Updating solution at time level N...
done.
itertime/iter
Flow time = 0.006000000052154064s, time step = 6
14 more time steps
Updating solution at time level N...
done.
itertime/iter
Flow time = 0.007000000216066837s, time step = 7
13 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.007
number tracked = 1
itertime/iter
Flow time = 0.00800000037997961s, time step = 8
12 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 1
itertime/iter
Flow time = 0.009000000543892384s, time step = 9
11 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 1
itertime/iter
Flow time = 0.01000000070780516s, time step = 10
10 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 1
itertime/iter
Flow time = 0.01100000087171793s, time step = 11
9 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 1
itertime/iter
Flow time = 0.01200000010430813s, time step = 12
8 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 1
itertime/iter
Flow time = 0.0130000002682209s, time step = 13
7 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.013
number tracked = 2
itertime/iter
Flow time = 0.01400000043213367s, time step = 14
6 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 2
itertime/iter
Flow time = 0.01500000059604645s, time step = 15
5 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 2
itertime/iter
Flow time = 0.01600000075995922s, time step = 16
4 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 2
itertime/iter
Flow time = 0.01700000092387199s, time step = 17
3 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
Injecting 1 particle parcels with mass 1e11 at t = 0.017
number tracked = 3
itertime/iter
Flow time = 0.01800000108778477s, time step = 18
2 more time steps
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 3
itertime/iter
Flow time = 0.01900000125169754s, time step = 19
1 more time step
Advancing DPM injections ....
Updating solution at time level N...
done.
number tracked = 3
itertime/iter
Flow time = 0.02000000141561031s, time step = 20
Calculation complete.
...]
Note1: when the original cas is read in the new releases, the time step is no more a round number, 1e3s, but it gains that additional decimals....I am assuming that it does not affect the computation
Note 2: the injection file is now (just to be sure I am not messing up here somewhere):
(z=4 13)
(x y z u v w diameter t parcelmass mass ninparcel time flowtime)
((0.0 0.00000000 5.5e02 0.0 0.0 1 3.73e05 400.0 1e11 2.12406e11 0.56349 0.0000e+00 3.0000e03) injection0:0)
Instead, I missed what you said about "You can use the option STart foltime in File" to start injection after certain time elapsed: the last column in the injection file will then be used".
Do you mean the "Start flowtime in file [s]" options in the "point properties" dialog box? if I do not use this option "the last column in the injection file" is not used?
thanks for your help

June 7, 2021 at 7:18 pmDrAmineAnsys EmployeeThe particles and flow will always have the same time so it injects on top of the new time step so that at its ends particle and flow have same time elapsed. I need to think more about the first injection time and I will comment once I can have time.
If you use unsteady file injection you can tell Fluent to start injecting from the column 13. I will recommend first testing with that file injection but adding some lines for other time events instead of repeat interval.

June 8, 2021 at 1:33 pmLLhtcSubscriberagain, many thanks for your help, I am looking forward for your answer about the first injection time.
In the meanwhile, I am following you suggestion about avoiding the repeat interval with a longer unsteady injection file: it seems working fine.
Thanks again!

June 8, 2021 at 2:40 pmDrAmineAnsys EmployeeI need to repeat it: The particles and flow will always have the same time so it injects on top of the new time step so that at its ends particle and flow have same time elapsed. Imagine you start from zero the flow time is zero at the first flow time step Fluent will solve for the first time interval for that reason you will particles injected at time 0 [s] as at the end of that time step it has the time 0.001[s].
So this guy: ((0.0 0.0 0.0 0.0 1.0 0.0 0.0001 400.0 1e11 2.12406e11 0.56349 0.0 0.0) injection0:0) with a repeat interval of 0.005
Will inject at 0.0, 0.005, 0.0010. You might notice that i might inject at 0.009 but is due to the fact that the flow time is not 100% equal to 0..09. Particle tracker will rectify that and track the particle again from a fraction of millisecond so that if you look into the particle residence time after 0.010 second you will see consistent behavior.
Again for the particle tracker the time interval / period is important

 You must be logged in to reply to this topic.
Simulation World 2022
Check out more than 70 different sessions now available on demand. Get inspired as you hear from visionary companies, leading researchers and educators from around the globe on a variety of topics from lifesaving improvements in healthcare, to bold new realities of space travel. Take a leap of certainty and check out a session today here.
Earth Rescue – An Ansys Online Series
The climate crisis is here. But so is the human ingenuity to fight it. Earth Rescue reveals what visionary companies are doing today to engineer radical new ideas in the fight against climate change. Click here to watch the first episode.
Ansys Blog
Subscribe to the Ansys Blog to get great new content about the power of simulation delivered right to your email on a weekly basis. With content from Ansys experts, partners and customers you will learn about product development advances, thought leadership and trends and tips to better use Ansys tools. Sign up here.
 Suppress Fluent to open with GUI while performing in journal file
 Heat transfer coefficient
 What are the differences between CFX and Fluent?
 Floating point exception in Fluent
 The solver failed with a nonzero exit code of : 2
 Getting graph and tabular data from result in workbench mechanical
 Difference between Kepsilon and Komega Turbulence Model
 Time Step Size and Courant Number
 Mesh Interfaces in ANSYS FLUENT
 error in cfd post

1960

1720

931

700

389
© 2022 Copyright ANSYS, Inc. All rights reserved.