Hi MICRESS,
I have two questions,
1:
Is there a way to delete output time results. E.g I've ran a simulation for 100 seconds and I've set the output times to give me images every 0.1 seconds for 100 seconds. But how would i change it so that i delete all but the image for 100 seconds for example.
2:
I am aware that the output time should not change the simulation but two different simulations with different output times but otherwise completely the same show different results.
I have been testing dendrite spacing and to do this i have set up simulations for directional solidification with 5 equally spaced dendrites and seeing at what spacing new dendrites form between the 5 equally spaced dendrites. At a spacing of 530um new dendrites appeared between the 5 equally spaced dendrites however i couldnt see if the new dendrites were forming from tertiary arms or from artefacts (driving file for this simulation is AlNi_13.dri). To try and see when the dendrites were forming and if they were forming from artefacts or not, i set up another simulation (driving file for this simulation is AlNi_13 legitimacy test.dri), this simulation had much smaller output times for the period where new dendrites formed. As you can see, the end results of the original simulation show new stable dendrites between the equally spaced original 5 (AlNi_13.png) and the simulation with smaller output times shows no dendrites formed (AlNi_13 legitimacy test image.png). For the simulation with smaller timesteps i have attached images at 15.42,15.76, and 16.28 to show points in the simulation where the artefacts at the bottom of the simulation appear.
Any help as to why i am getting different results would be much appreciated as from what i understand the change in output times shouldnt change anything other than the time at which output images are produced?
Thanks,
Matthew
Output time changes are changing results
-
matt_hughes
- Posts: 9
- Joined: Fri Jan 31, 2025 4:21 pm
- anti_bot: 333
Output time changes are changing results
You do not have the required permissions to view the files attached to this post.
Re: Output time changes are changing results
Dear Matthew,
With respect to your first question, unfortunately, there is no direct way in DP_MICRESS to delete selected output time-steps from existing results. It would, of course, be possible to implement a tool for that using MicPy. With DP_MICRESS, the workaround is to export those time-steps which should be kept as a new set of outputs (with new base file name). Later, you still can erase the original ones and rename the copy.
The second question was about why adding output time-steps changes results. When writing outputs at a given time, we reduce the last numerical phase-field time-step before each output event such as to exactly meet the specified output time. This we do to avoid that output times are incorrect or altered. But it is not only to e.g. avoid "t = 1.0137642 instead of "t= 1.00", but also outputs could be completely skipped or be written identically if the output interval is smaller than the numerical time step. You also would not be able to compare the results of different simulation runs for the same time-step, and different runs of a simulation series would perhaps not even have the same number of outputs!
To avoid that we modify the numerical phase-field time-step directly before the output, knowing that this numerically changes simulation results. In cases like yours where simulation is unstable, and numerical noise decides whether or at which time a dendrite is branching, these changes can be large. However, the same would also happen if you would change any of the numerical parameters, even if only in the last digit...
Bernd
With respect to your first question, unfortunately, there is no direct way in DP_MICRESS to delete selected output time-steps from existing results. It would, of course, be possible to implement a tool for that using MicPy. With DP_MICRESS, the workaround is to export those time-steps which should be kept as a new set of outputs (with new base file name). Later, you still can erase the original ones and rename the copy.
The second question was about why adding output time-steps changes results. When writing outputs at a given time, we reduce the last numerical phase-field time-step before each output event such as to exactly meet the specified output time. This we do to avoid that output times are incorrect or altered. But it is not only to e.g. avoid "t = 1.0137642 instead of "t= 1.00", but also outputs could be completely skipped or be written identically if the output interval is smaller than the numerical time step. You also would not be able to compare the results of different simulation runs for the same time-step, and different runs of a simulation series would perhaps not even have the same number of outputs!
To avoid that we modify the numerical phase-field time-step directly before the output, knowing that this numerically changes simulation results. In cases like yours where simulation is unstable, and numerical noise decides whether or at which time a dendrite is branching, these changes can be large. However, the same would also happen if you would change any of the numerical parameters, even if only in the last digit...
Bernd