How to avoid oscillations when numerically integrating the thermal counductivity equations on discrete grid?

Clash Royale CLAN TAG#URR8PPP
up vote
1
down vote
favorite
Consider the grid (one or two dimensional) of cells modelling the solid - each cell holds the current temperature and heat capacity.
Propagation of heat is then modelled in two iterative steps:
1. Compute temperature differences between neighbour cells thus yielding the heat flux according to the Fourier's law
2. Compute the termperature changes of cells according to heat capacity of a cell
3. Proceed to next iteration of time
This kind of approach can lead to oscillations (which cannot happen under heat transfer equation) - when temperature differences are high, heat is transferred too much between cells so they become to have the temperature gradient in reverse direction.
How to avoid such oscillations?
integration differential-equations numerical-methods heat-equation
 |Â
show 2 more comments
up vote
1
down vote
favorite
Consider the grid (one or two dimensional) of cells modelling the solid - each cell holds the current temperature and heat capacity.
Propagation of heat is then modelled in two iterative steps:
1. Compute temperature differences between neighbour cells thus yielding the heat flux according to the Fourier's law
2. Compute the termperature changes of cells according to heat capacity of a cell
3. Proceed to next iteration of time
This kind of approach can lead to oscillations (which cannot happen under heat transfer equation) - when temperature differences are high, heat is transferred too much between cells so they become to have the temperature gradient in reverse direction.
How to avoid such oscillations?
integration differential-equations numerical-methods heat-equation
Presumably the temperature changes calculated in step 2 are of the same order of magnitude or larger than the temperature differences in step 1 leading to oscillation. What happens when the temperature changes in step 2 are much smaller than the temp differences in step 1, say by reducing the iteration interval used?
â James Arathoon
Aug 27 at 14:11
Yes, that's how I described it. Temperature difference inverts due to large heat flux.
â mbaitoff
Aug 27 at 16:07
So, basically you're computing temperature via an explicit numerical scheme for heat equation. It's known to be unstable if the stability condition on $fractauh^2$ is violated, where $tau$ is the time-step (you're using it in your in your iterative process) and $h$ is the space mesh step.
â VorKir
Aug 28 at 0:08
@VorKir my time step is effectively equals to one (one iteration) and lateral step is also one (one cell), how can that satisfy the stability condition? Is there other than explicit schemes that avoid the unstability?
â mbaitoff
Aug 28 at 4:14
1
First, unless I miss something, your statement is wrong if applied in general, read about stability in any textbook on numerical analysis, e.g., en.wikipedia.org/wiki/FTCS_scheme. Second, I forgot about heat capacity and heat conductivity which affect the stability condition. It should read as $fractauh^2 leq fracc2d lambda$ where $d = 1,2$ is the dimension, $c$ is the heat capacity and $lambda$ is the heat conductivity.
â VorKir
Aug 28 at 16:50
 |Â
show 2 more comments
up vote
1
down vote
favorite
up vote
1
down vote
favorite
Consider the grid (one or two dimensional) of cells modelling the solid - each cell holds the current temperature and heat capacity.
Propagation of heat is then modelled in two iterative steps:
1. Compute temperature differences between neighbour cells thus yielding the heat flux according to the Fourier's law
2. Compute the termperature changes of cells according to heat capacity of a cell
3. Proceed to next iteration of time
This kind of approach can lead to oscillations (which cannot happen under heat transfer equation) - when temperature differences are high, heat is transferred too much between cells so they become to have the temperature gradient in reverse direction.
How to avoid such oscillations?
integration differential-equations numerical-methods heat-equation
Consider the grid (one or two dimensional) of cells modelling the solid - each cell holds the current temperature and heat capacity.
Propagation of heat is then modelled in two iterative steps:
1. Compute temperature differences between neighbour cells thus yielding the heat flux according to the Fourier's law
2. Compute the termperature changes of cells according to heat capacity of a cell
3. Proceed to next iteration of time
This kind of approach can lead to oscillations (which cannot happen under heat transfer equation) - when temperature differences are high, heat is transferred too much between cells so they become to have the temperature gradient in reverse direction.
How to avoid such oscillations?
integration differential-equations numerical-methods heat-equation
asked Aug 27 at 12:24
mbaitoff
578319
578319
Presumably the temperature changes calculated in step 2 are of the same order of magnitude or larger than the temperature differences in step 1 leading to oscillation. What happens when the temperature changes in step 2 are much smaller than the temp differences in step 1, say by reducing the iteration interval used?
â James Arathoon
Aug 27 at 14:11
Yes, that's how I described it. Temperature difference inverts due to large heat flux.
â mbaitoff
Aug 27 at 16:07
So, basically you're computing temperature via an explicit numerical scheme for heat equation. It's known to be unstable if the stability condition on $fractauh^2$ is violated, where $tau$ is the time-step (you're using it in your in your iterative process) and $h$ is the space mesh step.
â VorKir
Aug 28 at 0:08
@VorKir my time step is effectively equals to one (one iteration) and lateral step is also one (one cell), how can that satisfy the stability condition? Is there other than explicit schemes that avoid the unstability?
â mbaitoff
Aug 28 at 4:14
1
First, unless I miss something, your statement is wrong if applied in general, read about stability in any textbook on numerical analysis, e.g., en.wikipedia.org/wiki/FTCS_scheme. Second, I forgot about heat capacity and heat conductivity which affect the stability condition. It should read as $fractauh^2 leq fracc2d lambda$ where $d = 1,2$ is the dimension, $c$ is the heat capacity and $lambda$ is the heat conductivity.
â VorKir
Aug 28 at 16:50
 |Â
show 2 more comments
Presumably the temperature changes calculated in step 2 are of the same order of magnitude or larger than the temperature differences in step 1 leading to oscillation. What happens when the temperature changes in step 2 are much smaller than the temp differences in step 1, say by reducing the iteration interval used?
â James Arathoon
Aug 27 at 14:11
Yes, that's how I described it. Temperature difference inverts due to large heat flux.
â mbaitoff
Aug 27 at 16:07
So, basically you're computing temperature via an explicit numerical scheme for heat equation. It's known to be unstable if the stability condition on $fractauh^2$ is violated, where $tau$ is the time-step (you're using it in your in your iterative process) and $h$ is the space mesh step.
â VorKir
Aug 28 at 0:08
@VorKir my time step is effectively equals to one (one iteration) and lateral step is also one (one cell), how can that satisfy the stability condition? Is there other than explicit schemes that avoid the unstability?
â mbaitoff
Aug 28 at 4:14
1
First, unless I miss something, your statement is wrong if applied in general, read about stability in any textbook on numerical analysis, e.g., en.wikipedia.org/wiki/FTCS_scheme. Second, I forgot about heat capacity and heat conductivity which affect the stability condition. It should read as $fractauh^2 leq fracc2d lambda$ where $d = 1,2$ is the dimension, $c$ is the heat capacity and $lambda$ is the heat conductivity.
â VorKir
Aug 28 at 16:50
Presumably the temperature changes calculated in step 2 are of the same order of magnitude or larger than the temperature differences in step 1 leading to oscillation. What happens when the temperature changes in step 2 are much smaller than the temp differences in step 1, say by reducing the iteration interval used?
â James Arathoon
Aug 27 at 14:11
Presumably the temperature changes calculated in step 2 are of the same order of magnitude or larger than the temperature differences in step 1 leading to oscillation. What happens when the temperature changes in step 2 are much smaller than the temp differences in step 1, say by reducing the iteration interval used?
â James Arathoon
Aug 27 at 14:11
Yes, that's how I described it. Temperature difference inverts due to large heat flux.
â mbaitoff
Aug 27 at 16:07
Yes, that's how I described it. Temperature difference inverts due to large heat flux.
â mbaitoff
Aug 27 at 16:07
So, basically you're computing temperature via an explicit numerical scheme for heat equation. It's known to be unstable if the stability condition on $fractauh^2$ is violated, where $tau$ is the time-step (you're using it in your in your iterative process) and $h$ is the space mesh step.
â VorKir
Aug 28 at 0:08
So, basically you're computing temperature via an explicit numerical scheme for heat equation. It's known to be unstable if the stability condition on $fractauh^2$ is violated, where $tau$ is the time-step (you're using it in your in your iterative process) and $h$ is the space mesh step.
â VorKir
Aug 28 at 0:08
@VorKir my time step is effectively equals to one (one iteration) and lateral step is also one (one cell), how can that satisfy the stability condition? Is there other than explicit schemes that avoid the unstability?
â mbaitoff
Aug 28 at 4:14
@VorKir my time step is effectively equals to one (one iteration) and lateral step is also one (one cell), how can that satisfy the stability condition? Is there other than explicit schemes that avoid the unstability?
â mbaitoff
Aug 28 at 4:14
1
1
First, unless I miss something, your statement is wrong if applied in general, read about stability in any textbook on numerical analysis, e.g., en.wikipedia.org/wiki/FTCS_scheme. Second, I forgot about heat capacity and heat conductivity which affect the stability condition. It should read as $fractauh^2 leq fracc2d lambda$ where $d = 1,2$ is the dimension, $c$ is the heat capacity and $lambda$ is the heat conductivity.
â VorKir
Aug 28 at 16:50
First, unless I miss something, your statement is wrong if applied in general, read about stability in any textbook on numerical analysis, e.g., en.wikipedia.org/wiki/FTCS_scheme. Second, I forgot about heat capacity and heat conductivity which affect the stability condition. It should read as $fractauh^2 leq fracc2d lambda$ where $d = 1,2$ is the dimension, $c$ is the heat capacity and $lambda$ is the heat conductivity.
â VorKir
Aug 28 at 16:50
 |Â
show 2 more comments
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2896146%2fhow-to-avoid-oscillations-when-numerically-integrating-the-thermal-counductivity%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Presumably the temperature changes calculated in step 2 are of the same order of magnitude or larger than the temperature differences in step 1 leading to oscillation. What happens when the temperature changes in step 2 are much smaller than the temp differences in step 1, say by reducing the iteration interval used?
â James Arathoon
Aug 27 at 14:11
Yes, that's how I described it. Temperature difference inverts due to large heat flux.
â mbaitoff
Aug 27 at 16:07
So, basically you're computing temperature via an explicit numerical scheme for heat equation. It's known to be unstable if the stability condition on $fractauh^2$ is violated, where $tau$ is the time-step (you're using it in your in your iterative process) and $h$ is the space mesh step.
â VorKir
Aug 28 at 0:08
@VorKir my time step is effectively equals to one (one iteration) and lateral step is also one (one cell), how can that satisfy the stability condition? Is there other than explicit schemes that avoid the unstability?
â mbaitoff
Aug 28 at 4:14
1
First, unless I miss something, your statement is wrong if applied in general, read about stability in any textbook on numerical analysis, e.g., en.wikipedia.org/wiki/FTCS_scheme. Second, I forgot about heat capacity and heat conductivity which affect the stability condition. It should read as $fractauh^2 leq fracc2d lambda$ where $d = 1,2$ is the dimension, $c$ is the heat capacity and $lambda$ is the heat conductivity.
â VorKir
Aug 28 at 16:50