Transient simulation with Dirichlet BCs

159 views
Skip to first unread message

Andrew Dykhuis

unread,
Jun 27, 2014, 3:42:24 PM6/27/14
to moose-users
Hello all - 

If I want to run a transient simulation, but use Dirichlet BCs on the temperature, do I still need to use a time derivative kernel on my temperature variable? The thermal conductivity material property is changing with time, but since the BCs are the same, I should get the same temperature results, correct? I have temperature dependent diffusivities, and I get different results for my diffusing variable with the time derivative kernel active and not active, even though the temperature BCs are the same in each case.

Thanks,

Andrew

Cody Permann

unread,
Jun 27, 2014, 3:59:55 PM6/27/14
to <moose-users@googlegroups.com>
IIRC, MOOSE complains if you attempt to use a Transient Executioner without any time derivatives active in your simulation.  Assuming you get past that (perhaps you have a time derivative active on another equation?), your temperature should reach steady state immediately with constant Dirichlet BCs, even with a time-dependent diffusivity: 

div * k(t)*grad u = 0

So, are you indeed solving a "steady simulation" with a transient executioner? Are you setting any initial conditions on your temperature?
Cody  

--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
Visit this group at http://groups.google.com/group/moose-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/CAH-kVhh1j%3DDuFJnJhhurnV%3DGDE%2BkaMiEZfYLJgb83e7FeK8iGg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Andrew Dykhuis

unread,
Jun 27, 2014, 4:25:39 PM6/27/14
to moose-users
I do use a time derivative kernel in my simulation - on my diffusing species. I set an initial condition on my temperature, and have BCs, so my assumption is that it solves this "steady simulation" each time step. What's curious to me is that this gives me different results than the same BCs with a time derivative kernel active on the temperature. 

Andrew


Cody Permann

unread,
Jun 27, 2014, 4:46:41 PM6/27/14
to <moose-users@googlegroups.com>
Yeah, you've got it. Without the time derivative in your heat equation, you are essentially solving the steady state temperature equation every timestep, or if you want to think about it this way, the change in temperature is "instantaneous" relative to your other equations.  Once you add a time derivative though, you have changed your underlying equation. If your timesteps are on the same order as your time derivative term, it may take several steps to reach that steady-state temperature.  However, once you reach the steady-state temperature, both the steady and transient versions of that equation should remain steady.  If you have temperature coupled into your other equations though, all bets might be off on the overall behavior of your simulation since the different temperature history might impact your other equations.

What differences are you seeing? Does your temperature reach steady state eventually? Can you decouple your equations to verify the temperature equation independently? You might use the default coupling capability in MOOSE to play around with this: http://mooseframework.org/blog/defaults-for-coupling/

Cody

Andrea Jokisaari

unread,
Jun 27, 2014, 5:15:23 PM6/27/14
to moose...@googlegroups.com
I talked with Andrew off-list and I think we've sorted out his questions.  His initial condition wasn't too close to his boundary conditions, which is going to give some difference in the time-dependent vs the time-independent solution at each timestep if the thermal diffusivity is low and the thermal conductivity is non-constant.

Andrea

Andrew Dykhuis

unread,
Jun 27, 2014, 5:24:02 PM6/27/14
to moose-users
Thanks to both of you for your help!

Andrew


Derek Gaston

unread,
Jun 27, 2014, 10:11:39 PM6/27/14
to MOOSE
I just want to clear something up here... it is 100% fine to use a Transient simulation without any time derivatives... MOOSE does not give any warning or error (nor should it!).

If you have a time-varying condition (like a boundary condition or forcing function) but you're not using any time derivatives this is generally called "quasi-static".  That's actually the main way that we (and everyone else) solve solid mechanics a good chunk of the time.  In solid mechanics you may have some time-varying force or displacement... but the mechanical response of your system is _so_ much faster than the change in your boundary conditions that you just treat each step as solving to steady state (without a time derivative term).

This idea works for any physics where the response is a lot faster than the conditions being changed... and with MOOSE it's quite simple to just leave out a time derivative term in an equation in order to solve it as "quasi-static".

Derek



Reply all
Reply to author
Forward
0 new messages