Что мы знаем о числе?
Ничего, но знают все.
Что мы знаем о тепле?
То же, что и о числе.

В. А. Зорич

В термодинамике большую роль играет отличие между обратимыми и необратимыми процессами. Идеальный цикл Карно включает в себя обратимый изотермический процесс превращения теплоты в работу. Его возможность обеспечивается тем, что предполагается бесконечно малая разность температур между источником теплоты и рабочим телом. С другой стороны, теплообмен между двумя телами с разными температурами является необратимым процессом, что подчеркивается во всех учебниках термодинамики. В этом случае переход к медленному процессу при стремлении времени к бесконечности не помогает, процесс остается необратимым. Энтропия системы, состоящей из двух тел с разными температурами, по мере передачи теплоты возрастает.

В. А. Зорич в книге ‘Математические аспекты классической термодинамики‘ предложил задачу, которая показывает, как при сохранении формулировки Клаузиуса 'Теплота не может переходить само собой (без компенсации) от более холодного тела к более тёплому' можно провести обратимый теплообмен между двумя брусками с разными температурами. Никогда не предполагал, что такое возможно. Конечно, предложенный процесс невозможен практически, но предлагаемая концептуальная модель дает новый взгляд на теплообмен.

Рассмотрим два бруска одинаковой длины и сечения, изготовленных из материала, теплоемкость которого не зависит от температуры. Первый брусок находится при температуре 100ºС, а второй при 0ºС. При соприкосновении брусков теплота переходит от более горячего к более холодному и в конце температура обоих брусков будет 50ºС. Рассчитаем изменение энтропии в этом процессе — для простоты теплоемкость каждого бруска возьмем равной единице:

\Delta S=ln\left(\frac{50+273.15}{100+273.15}\right)+ln\left(\frac{50+273.15}{273.15}\right)=0.024

Энтропия, как и следовало ожидать, увеличивается; процесс является необратимым. Из конечного состояния невозможно вернуть бруски в исходное состояние без использования энергии извне. Этот случай принадлежит к стандартному теплообмену.

Хитрый математик Зорич предложил следующее. Представим, что каждый из брусков разделен пополам адиабатической перегородкой. Теперь проведем теплообмен путем продви­жения одного из брусков вдоль другого. Ниже эта идея показана схематически на рисунке вместе с получающимися температурами в ходе перемещения бруска. Как обычно, считается, что передвижение бруска не требует дополнительной энергии - это процесс без трения и он происходит на одной высоте.

Рис. 1. Перемещение двух брускок с адиабатической перегородкой.
Рис. 1. Перемещение двух брускок с адиабатической перегородкой.

Исходная позиция — бруски не касаются друг друга. Следующая позиция - перемещение нижнего бруска на половину длины. В силу адиабатических перегородок теплообмен идет только среди соприкасающихся частей брусков. Следующий шаг совмещает бруски, но в силу адиабатических перегородок справа и слева разные температуры. Теперь можно сделать последний шаг, ведь брусок еще раз можно передвинуть.

Достижение термического равновесия по частям привело к тому, что средняя температура нижнего бруска стала больше средней температуры верхнего бруска. Второй закон термодинамики не нарушен, теплота все время переходила от более горячего к более холодному телу, но при этом удалось передать от горячего тела к холодному больше энергии, чем в стандартном теплообмене без перегородок. Энтропия возросла в таком процессе на меньшую величину по сравнению со стандартным теплообменом: 0.021.

Следующий логический шаг — это увеличение числа разбиений и исследование предела, когда число разбиений стремится к бесконечности. Зорич оставил это в качестве упражнения и, возможно, математики смогут провести строгое доказательство. Я же ограничусь использованием небольшой программки на Питоне (см. приложение), которая рассчитывает конечную температуры в обоих стержнях при заданном числе разбиений. Ниже я приведу только один график:

Рис. 2.  Температурное распределение в брусках при разно числе разбиений.
Рис. 2. Температурное распределение в брусках при разно числе разбиений.

На графике показано температурное распределение в двух брусках после завершения процесса передвижения для трех разных разбиений брусков, на 5, 500 и 10000 частей. Температуры кусочков соединены прямыми линиями, что создает несколько неправильное представление в особенности в случае разбиения на 5 частей, поскольку должны быть пять горизонтальных линий. Но для больших чисел разбиений это не играет практически никакой роли.

Конечные температурные распределения бруска с исходной температурой 100ºС (hot) находятся внизу графика — в ходе такого процесса брусок охлаждается; при увеличении числа разбиений до 0ºС. В то же время брусок с исходной температурой 0ºС (cold) нагревается при увеличении числа разбиений до 100ºС. Температура самой левой точки бруска с исходной температурой 100ºС и самой правой точки бруска с исходной температурой 0ºС остается равной 50ºС. Однако области, прилежащие к этим точкам, при увеличении числа разбиений сужаются и при стремлении к бесконечности превратятся в дельта функции.

Программа также делает расчет изменения энтропии как функции числа разбиений. Оно уменьшается и при устремлении числа разбиений к бесконечности стремится к нулю. Предложенный Зоричем процесс будет обратимым процессом передачи теплоты от одного бруска (100ºС) к другому (0ºС) при бесконечном числе разбиений! Отличие этого процесса от изотермического процесса обратимого цикла Карно связано с тем, что в качестве бесконечно малого рассматривается не разница температур, а количество нагреваемого вещества.

Бесконечное количество разбиений соответствует использованию материала с анизо­тропной теплопроводностью, когда теплопроводность по направлению между брусками бесконечно больше теплопроводности в двух других направлениях. Представим себе два бруска с такой анизотропной теплопроводностью. Исходная температура одного бруска 100ºС, а другого 0ºС. Теперь бесконечно медленно проводим один брусок мимо другого - бруски поменялись температурами. Можно теперь двигать бруски в обратном направлении и опять произойдет обмен температурами. При этом второй закон в виде формулировки Клаузиуса не нарушается, теплота все время переходит от более горячего к более холодному телу. Таким образом, обратимый процесс теплообмена между двумя телами с разными температурами возможен на уровне концептуальной идеализированной модели.

В заключение отмечу, что на практике используется рекуперативные противоточные теплообменники; идея Зорича несколько перекликается с принципом их работы.

Список литературы

Владимир Антонович Зорич, Математические аспекты классической термодинамики, 2019.

Приложение

# Evgenii Rudnyi
# requires matplotlib (it includes numpy)
# python -m pip install -U matplotlib

import numpy
import pylab
import math
import numbers

def PlotResultTogether(X, Y, 
		FileName = 'plot', 
		CommonTitle = '', 
		FunctionX = lambda x: x, 
		FunctionY = lambda x: x,
		LogX = False,
		LogY = False,
		LimX = False,
		LimY = False,
		Options = False,
		Grid = False,
		LabelX = False,
		LabelY = False,
		Legend = False,
		Location = 0):
	"""makes plots in the same figure. 
	
	Options: FileName for the base name, CommonTitle for a title,
	FunctionX and FunctionY to modify series values, LogX and LogY to
	turn on a logarithmic scale for X and Y axes, Options is a list of
	dictionaries with matplotlib properties for each series."""

	pylab.title(CommonTitle)
	ax = pylab.gca()
	if LogX:
		ax.set_xscale("log")
	if LogY:
		ax.set_yscale("log")
	pylab.grid(Grid)
	if LimX:
		pylab.xlim(LimX)
	if LimY:
		pylab.ylim(LimY)
	if LabelX:
		pylab.xlabel(LabelX)
	if LabelY:
		pylab.ylabel(LabelY)
	kk = 0
	for i in range(len(Y)):
		if isinstance(X[0], numbers.Number):
			x = [FunctionX(k) for k in X]
		else:
			x = [FunctionX(k) for k in X[i]]
		y = [FunctionY(k) for k in Y[i]]
		if Options == False:
			pylab.plot(x, y)
		else:
			pylab.plot(x, y, **Options[kk])
			kk = kk + 1
			if kk == len(Options):
				kk = 0
	if Legend != False:
		pylab.legend(Legend, loc = Location)
	pylab.savefig(FileName, dpi=125)
	pylab.clf()

def ComputeChangeS(x,T_ini):
	""" computes entropy change for given temperatures in the array """
	S = 0
	N = len(x)
	for i in range(N):
		S = S + math.log((x[i] + 273.15)/(T_ini+273.15))/N
	return S

def run(N):
	""" run the procedure to move bricks

	N is the number of divisions """
	n = numpy.full((N,),100.)
	m = numpy.zeros((N,))
	for i in range(N):
		for j in range(i + 1):
			val = (n[-i+j-1] + m[j])/2
			m[j] = n[-i+j-1] = val
	for i in range(N - 1):
		for j in range(N - 1 - i):
			val = (n[j] + m[j + i + 1])/2
			m[j + i + 1] = n[j] = val
	delS1 = ComputeChangeS(n, 100)
	delS2 = ComputeChangeS(m, 0)
	return numpy.mean(n), numpy.mean(m), delS1 + delS2, n, m

#The main code
#This is array with the number of divisions to run and plot
arrN = [5, 10, 50, 100, 500, 1000, 5000, 10000]
delS = []
meann = []
meanm = []
vecn = []
vecm = []
for i in arrN:
	print(i)
	a, b, c, d, e = run(i)
	print(a, b, c)
	meann.append(a)
	meanm.append(b)
	delS.append(c)
	vecn.append(d)
	vecm.append(e)
	PlotResultTogether(range(i), [d, e], Legend = ['hot', 'cold'], FileName='temp_' + str(i))


#Plot just three curves together
ia = 0
ib = 4
ic = 7 
na = arrN[ia]
nb = arrN[ib]
nc = arrN[ic]
a = numpy.linspace(0., 1., na)
b = numpy.linspace(0., 1., nb)
c = numpy.linspace(0., 1., nc)
legend = ['hot_' + str(na), 'cold_'  + str(na), 'hot_' + str(nb), 'cold_'  + str(nb), 'hot_' + str(nc), 'cold_'  + str(nc)]
PlotResultTogether([a, a, b, b, c, c], [vecn[ia], vecm[ia], vecn[ib], vecm[ib], vecn[ic], vecm[ic]], Legend = legend, LabelX = 'Length', LabelY='Temperature', FileName='temp_together')

#plot mean temperature as a function of a number of division
PlotResultTogether(arrN, [meann, meanm], Legend = ['hot', 'cold'], FileName='meanT', LogX = True)

#plot entropy change as a function of a number of division
PlotResultTogether(arrN, [delS], Legend = ['delS'], FileName='delS', LogX = True, LogY = True)

Комментарии (25)


  1. blik13
    31.08.2026 13:25

    .


  1. VAF34
    31.08.2026 13:25

    Неужели при обратном движении брусков распределение температур вернется к исходному?


    1. rudnyi Автор
      31.08.2026 13:25

      В рамках сделанного предположения о бесконечном разбиении брусков ответ положительный - да, вернется. Крайне неожиданно, но получается, что так.


      1. ksbes
        31.08.2026 13:25

        У вас энтропия всё равно возросла - довольно легко посчитать. Так что нет. Не вернёться.


        1. rudnyi Автор
          31.08.2026 13:25

          При стремлении числа разбиений к бесконечности изменение энтропии стремится к нулю.


    1. azTotMD
      31.08.2026 13:25

      Разумеется, нет. Это не получилось и на картинке с 4мя брусками, почему что-то изменится при бесконечном их количестве? На картинке ни один брусок не остыл до нуля и ни один не нагрелся до сотни. Мы всегда вычисляем новую температуру как (T1 + T2)/2. Сколько раз так ни сделай, обратно T1 и T2 не получить. В случае бесконечного количества будет бесконечно малое, но отличие. На графиках это просто не заметно.

      А автор - схоласт и демагог. Придумал адиабатические перегородки и скольжение для отвода глаз. На самом деле это 4 разные системы и мы сначала нагреваем холодный кусок горячим, потом ещё раз его же нагреваем горячим. Вот у нас и получается больше 50*. Понятно, что если систем будет бесконечно, то мы сможем почти до максимальной температуры нагреть бесконечно маленький холодный кусок. Это всё из серии Ахил не догонит черепаху.


      1. rudnyi Автор
        31.08.2026 13:25

        Это из серии обсуждения математического формализма, которое дает другой взгляд на эту проблему. Действительно вычисляется новая температура, но это происходит для бесконечно малого количества вещества. С точки зрения математики все корректно.


      1. Deadgods
        31.08.2026 13:25

        Чёт тоже навеяло Ахилла и черепаху

        Такая же абстракция


        1. rudnyi Автор
          31.08.2026 13:25

          В термодинамике нет времени, поэтому задача догнать кого-то не стоит. В то же время я согласен с тем, что это идеализация, которую нельзя выполнить практически.


  1. ksbes
    31.08.2026 13:25

    Хрень полная!

    Телепортов не изобрели. А если бруски движутся непрерывно, то обязательно будет момент когда один участок верхнего бруска качается двух участков нижнего (и симметрично- наоборот) Т.е. все участки касаются друг друга “по-змейке” и образуют единую систему теплообмена “обходя” перегородки. Т.к. движение проискходит квазистатически, - то это уравняет все температуры во всех учкстках.

    А то что получили вы - это как раз артефакт вычислений, которые проводятся только в “удобные” моменты времении.


    1. rudnyi Автор
      31.08.2026 13:25

      Это идеализация, которая дает другой взгляд на используемый математический формализм. Обратимых процессов не существует, все реальные процессы необратимые, но это не мешает использовать понятие обратимых процессов при построении термодинамики.


      1. ksbes
        31.08.2026 13:25

        Идеализация идеализации - рознь. Ваша идеализация сделана буквално на на краю - в результате полностью утрачен физический смысл процесса.


    1. SuperTEHb
      31.08.2026 13:25

      Скажите ещё, что бруски от трения дополнительно нагреются. Это же чисто умозрительная задачка. Аналитически, кстати, тоже решаемая.


      1. ksbes
        31.08.2026 13:25

        Это чисто математическая задача - не имеющая ничего общего ни с термодинамикой, ни сфизикой вообще. Да. Но нам её в статье преподносят не как “чистую математику”, а как некий парадокс, нарушающий второй закон термодинамики.


        1. rudnyi Автор
          31.08.2026 13:25

          Здесь нет нарушения второго закона. В этом вся суть этой задачи - это дает новый взгляд на теплообмен, при этом нет никаких нарушений законов термодинамики.

          В этом смысле физический смысл теплообмена сохраняется - утверждение Клаузиуса не нарушается. Теплота все время переходит от более горячего к более холодному телу.

          Неожиданность примера в том, что переход к бесконечно малому количеству вещества приводит к тому, что передача теплоты с разными температурами становится возможной в обратимом процессе. Но это получается уже было в формализме термодинамики, просто этого не замечали.


          1. azTotMD
            31.08.2026 13:25

            ахах, какой такой новый взгляд? что если тело уравновешивать температурой с бесконечным резервуаром, то мы доведем температуру тела почти до температуры резервуара? Это же банальщина.


            1. rudnyi Автор
              31.08.2026 13:25

              Нет, конечно. То, что можно теплоту в обратимом процессе можно перевести из одного бруска в другой.


  1. Deadgods
    31.08.2026 13:25

    В теплообменном оборудовани есть понятие прямоток и противоток (в зависимости от взаимного расположения холодного и горячего потоков). Эти моменты хорошо изучены и описаны. Противоток лучше сохраняет температурный потенциал.


    1. rudnyi Автор
      31.08.2026 13:25

      Эта задача не имеет отношения к реальному теплообмену. Это упражение на формализм термодинамики, которое дает новый взгляд на использование бесконечно малых.


      1. ksbes
        31.08.2026 13:25

        Это упраженние вобще не имеет никакого отношения к термодинамике и её формализму. Разве что “навеяна термодинамикой”.


      1. nilxxx
        31.08.2026 13:25

        Это вы так думаете. Есть вполне себе теплообменники, изготавливаемые в промышленных масштабах, в которых температура нагреваемой среды на выходе почти (ибо потери) равна температуре греющей среды на входе. 2 (а может 3) курс института, и дифуры расчета теплообмена мне в то время изрядно крови попили.


        1. rudnyi Автор
          31.08.2026 13:25

          Есть, это отмечено в конце заметки. Тем не менее, идея Зорича касается твердых брусков и в этом виде она не может быть перенесена на реальный теплообмен. Вид профиль температуры в примере Зорича при стремлении числа разбиений к бесконечности стремится к функции Хевисайда, которая перемещается вдоль бруска.


          1. nilxxx
            31.08.2026 13:25

            А теперь вместо адиабатических перегородок разделите бруски на отдельные кусочки, расплавьте в жидкость и налейте их в колбочки. Получите теплообменник с противотоком.


            1. rudnyi Автор
              31.08.2026 13:25

              Это будет другая задача с другим решением.


    1. SuperTEHb
      31.08.2026 13:25

      Тоже начал писать про теплообменники на встречных потоках, но потом всё-таки решил дочитать статью до конца.