Transient heat transfer with temperature BC magnitude varying along time

Hello folks!

I’ve been trying to solve a transient heat transfer problem where a plate emits heat by radiation to a sphere. I solved the problem considering the sphere’s initial temperature equal to 25 ºC and a plate temperature magnitude equal to 1000 ºC (constant) over time. It is expected that the sphere will heat over time, and it happens.

However, I intend to solve a case where the plate temperature magnitude changes over time, i.e., the plate temperature magnitude will start at 600 ºC in the first time increment until 1400 ºC in the last time increment. I didn’t see an option in the user interface to set the temperature BC as an equation or as a table to set a temperature in each time step. I’m calculating for a time period of 200000 seconds.

I also looked at the *TEMPERATURE input deck format in the CalculiX user guide ccs_2.19. I didn’t see an option to set the temperature variation along a time step. Is there any way to do this?

Best regards,
Caio.

Time variation of boundary conditions and loads can be defined using the amplitude feature, already implemented in PrePoMax.

Thank you for answering me. I tried to set it using the amplitude feature but was unsuccessful. I didn’t understand how to configure the shift time and amplitude properly. Also, I configured the tabular to vary the temperature from 25 to 100 °C, and the plate temperature variated from 0 to 2500 °C. I’m doing something very wrong here. Is there any tutorial or guide you could send me to help me understand how to configure the BC with tabular data?

You don’t have to use those shift parameters at all, just fill in the Data points tab - specify the time and corresponding amplitude pairs. Keep in mind that you also have to select the previously defined amplitude in the BC/load definition to make it work. What’s also crucial here is that the amplitude values are multiplied by the magnitude specified in the BC/load definition so you should use a magnitude of 1 and input the actual temperatures in the amplitude definition. Another way would be to specify some magnitude other than 1 and treat amplitude values as scaling coefficients but it’s usually utilized in other cases.

1 Like

Thank you so much for the explanation. You helped me a lot. I’m sending the figure to illustrate to the other users the configurations:

2 Likes

I have a case where steam passes over a turbine rotor. The sink temperature and heat transfer coefficients will vary with time. I have solved this problem with Elmer but I would like to use Calculix.

Is there a way to implement this in PrePoMax or even Calculix?

Thank you.

Time variation can be defined using amplitudes. In PrePoMax, they are supported for sink temperatures but not for film coefficients. However, you can define this using Keyword Editor:

*FILM, FILM AMPLITUDE

Thank you.

In defining sink temperatures, I did not see an opportunity to input a amplitude. I will keep experimenting.

Again, thank you.

George

I was able to perform the thermal analysis and have temperatures for the nodes.

Now I want to calculate stresses from temperatures. As I said earlier, I have solved this problem with Elmer and now want to do it with PrePoMax.

Thank you.

George

Then you should use the Coupled temperature-displacement step. It’s available in PrePoMax. You define thermal and mechanical boundary conditions and loads within it.

I was actually not aware of this difference. So, I should add the option to select two amplitudes. One for the sink temperature and one for the film coefficient?

Yes, I created a feature request for this some time ago: Amplitude support for film coefficient and emmissivity

As stated in that thread, the same applies to radiation.

Yes, adding amplitude for film coefficient would be great. As practical example attached a study where increaseing the film amplitude between 11 and 12s is used to cool down a workpiece to initial temperature. The goal was to study the increase of temperature in the tooling after hours of production (the assumption of a constant temperature of the workpiece was not accurate enough).

I tried to apply Amplitue to body flux in a transient heat transfer analysis and it fails without any explanation. It runs when Time/Frequency is turned back to default.
Is it possible to apply Amplitude to Body Flux? I am trying to model heat generation during concrete hydration by changing Body Flux with time.

Yes, it should work. Do you get any errors or just no results ? What about the convergence output ? Also, what are the other conditions in this analysis ?

I am applying Convective_Film on the surfaces and Body_Flux to the whole part. The Amplitude is applied only to Body_Flux. The output is:

*ERROR in loadadd:
it is not allowed to
define two distributed
loads/fluxes with
different amplitudes
in one step
element: 1 face:BF

The error message is pretty clear in this case. You have a conflict between the volumetric and surface heat flux because they are applied to the same mesh entities but use different amplitudes. You would have to use the same amplitude for both or separate those regions somehow.

If I apply the same Amplitude to both Convective_Film and Body_Flux I get the same error.

Convective heat flux has an additional amplitude for the film coefficient but it’s not supported in PrePoMax and has to be defined with the Keyword Editor (via the FILM AMPLITUDE parameter for the *FILM keyword). Maybe try setting it to the same amplitude definition as well.