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.

manually changing temperature values at specified time

Please login with a confirmed email address before reporting spam

Hi,
I am wondering if it is possible to change the temperature of a subdomain at a chosen time. And in addition to this, can the specified temperature be taken from another subdomain within the model?

For example, I have two blocks (A and B). A starts at 1600 K and is being cooled and at t = 60, I want the temperature of block B to equal that of block A at t = 60. I don't have need to have the exact same gradients (the average temperature is fine).

3 Replies Last Post 17 mars 2010, 06:57 UTC−4
Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 15 mars 2010, 11:22 UTC−4
Hi

For me you have two questions in there:

1) change the temperature at given times: yes why not try

T = T0*(t<t0)+T1*(t>=t0)*(t<t1)*...*Tn*(t>=tn)

or otherwise simpler: define a piecevise function fT(t) and say T=fT(t)

2) couple the temperature between two items, or model at given times

Well why at given times ? why not express a continously linked physics and solve them together ?
There are a few examples in the doc about the weak constraints and boundary integrations, probably this is a good example for the non-ideal weak contraits (single way link), even an example somewhere about a thermal case with the temperature of one border linking around onto the other.

If not I would try to play with some integration variables over the domain to measure and then use the equation above for the controlled domain, but one must add some "*at(ti)" where "ti" are some of the PREVIOUS solved time steps to get it to work. But I'm not sure this (the "at()" operator) would even work during the simulation, you would have to test it out carefully, never done something like that

Hope this helps
Good luck
Ivar

Hi For me you have two questions in there: 1) change the temperature at given times: yes why not try T = T0*(t=t0)*(t=tn) or otherwise simpler: define a piecevise function fT(t) and say T=fT(t) 2) couple the temperature between two items, or model at given times Well why at given times ? why not express a continously linked physics and solve them together ? There are a few examples in the doc about the weak constraints and boundary integrations, probably this is a good example for the non-ideal weak contraits (single way link), even an example somewhere about a thermal case with the temperature of one border linking around onto the other. If not I would try to play with some integration variables over the domain to measure and then use the equation above for the controlled domain, but one must add some "*at(ti)" where "ti" are some of the PREVIOUS solved time steps to get it to work. But I'm not sure this (the "at()" operator) would even work during the simulation, you would have to test it out carefully, never done something like that Hope this helps Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 16 mars 2010, 08:41 UTC−4
Thanks, I will give it a shot.

The reason I don't want to continuously couple them is because I am modelling a "pseudo-assembly line", where the "subjects" move at a set time. Basically, the model has warm boxes placed at one point, and then these move down the line. And I want to investigate the heat transfer around them. I thought about a moving mesh for this, but with 9 moving boxes I thought this might be too many calculations, and I thought this way might be simpler.
Thanks, I will give it a shot. The reason I don't want to continuously couple them is because I am modelling a "pseudo-assembly line", where the "subjects" move at a set time. Basically, the model has warm boxes placed at one point, and then these move down the line. And I want to investigate the heat transfer around them. I thought about a moving mesh for this, but with 9 moving boxes I thought this might be too many calculations, and I thought this way might be simpler.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 17 mars 2010, 06:57 UTC−4
Where would you enter the piecewise definition? I entered "80*(t<60) + 900*(t>=60)" (as a simple example) in the Subdomain Expression field for the relevant subdomain, and the solver produced a duplicate variable error for T.
Where would you enter the piecewise definition? I entered "80*(t=60)" (as a simple example) in the Subdomain Expression field for the relevant subdomain, and the solver produced a duplicate variable error for T.

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.