thermal generation