Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Can we set a dynamic time stepping in the time-dependent solver ?

Please login with a confirmed email address before reporting spam

I am currently working on a transient simulation of pulse laser annealing process. The pulse repetition rate is 30kHz ( 30,000 pulses per second, period 33.3E-6 s), pulse width is only 25e-9 s. Now I encounter a problem: Since the pulse width is so small (25 nano-seconds), I have to set a very small time step for the solver, say 10E-9 s, in order to prevent the solver from skipping over the pulses. This setting results in a huge number of computational steps for a 5-second laser heating process in simulation (5s/25ns = 2.0E8 steps ! ). It will take years for my computer to finish such a short period (5 second) simulation (my God !). So I am wondering is there any way to set a dynamic time stepping for the time-dependent solver ? For example, can I set a small step of 10E-9s during the period of pulse irradiation (has the laser heating) and keep a large time step of 15E-6s during the period between two pulses (no laser heating). So that I can greatly speed up my transient simulation.

Thank you in advance for your kind solution or suggestions !

1 Reply Last Post Jul 8, 2010, 8:21 a.m. EDT
COMSOL Moderator

Hello wei xiong

Your Discussion has gone 30 days without a reply. If you still need help with COMSOL and have an on-subscription license, please visit our Support Center for help.

If you do not hold an on-subscription license, you may find an answer in another Discussion or in the Knowledge Base.


Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jul 8, 2010, 8:21 a.m. EDT
Hi,

You can use excel to create a list of time ranges each having a different time step. For example:

range(0.000000,0.000005,0.000100), range(0.000105,0.010,1.0)

This creates a 100us pulse using a 5us step size and then finishes the rest of the time up to 1.0s using a 0.01s step size. This process can be repeated for multiple pulses.

-Chris
Hi, You can use excel to create a list of time ranges each having a different time step. For example: range(0.000000,0.000005,0.000100), range(0.000105,0.010,1.0) This creates a 100us pulse using a 5us step size and then finishes the rest of the time up to 1.0s using a 0.01s step size. This process can be repeated for multiple pulses. -Chris

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.