This code performs a multi-objective optimization of an air-standard Brayton cycle, aiming to simultaneously optimize: (1) Net work output (Wnet) and (2) Thermal efficiency (ηB). Since these objectives are conflicting (increasing efficiency often reduces work and vice versa), a Pareto optimization approach is used to identify optimal trade-offs.
The system is defined using standard Brayton cycle relations with:
● Compressor efficiency: 𝜂𝐶=0.7
● Turbine efficiency: 𝜂𝑇=0.85
● Inlet temperature: 𝑇1=300𝐾
● Maximum cycle temperature: 𝑇3=1500𝐾
● Heat capacity ratio: 𝛾=1.4 (for air)
Decision variable: pressure ratio 𝜏.
The net work is modeled as: Turbine work minus compressor work (accounting for efficiencies: ηC = 0.7 and ηT = 0.85)
Thermal Efficiency is given by: 𝜂𝐵=𝑊𝑛𝑒𝑡/𝑄𝑖𝑛 where the heat input depends on compressor outlet temperature.
The net work is modeled as: Turbine work minus compressor work (accounting for efficiencies: ηC = 0.7 and ηT = 0.85)
Thermal Efficiency is given by: 𝜂𝐵=𝑊𝑛𝑒𝑡/𝑄𝑖𝑛 where the heat input depends on compressor outlet temperature.
Weighted Sum Method is adopted. A scalar objective function, called weightedObjective, is constructed:
𝐹(𝜏) = (1−𝛼) 𝑊𝑛𝑒𝑡 + 𝛼 𝜂𝐵
where 𝛼 ∈ [0 , 1] controls preference:
● α = 0 : maximize work
● α = 1 : maximize efficiency
The code sweeps 1000 weight values, solving: FindMaximum[{weightedObjective, constraints}]
This generates a set of optimal solutions forming the Pareto front shown by the blue dots in the last figure.
This generates a set of optimal solutions forming the Pareto front shown by the blue dots in the last figure.
To select a single optimal design, the code applies a distance-based method as follows:
● Normalize both objectives.
● Define the ideal point: (1,1).
● Compute Euclidean distance.
● Fetch the minimum distance.
The code yields the following result: τ≈8.06 Wnet≈223.23 𝜂𝐵≈0.2624. This represents the best trade-off design.
◼
The final plot shows:
◼
Blue points: Pareto solutions (from optimization)
◼
Green curve: full parametric sweep
◼
Red point: best compromise solution
◼
This plot visually confirms:
◼
The trade-off curve shape
◼
The optimal compromise location
In[]:=
T1=300;P1=1;T3=1500;ηC=0.7;ηT=0.85;γ=1.4;
In[]:=
Wnet[τ_]:=ηTT31---1;ηB[τ_]:=;
1-γ
γ
τ
T1
ηC
γ-1
γ
τ
ηTT31---1
1-γ
γ
τ
T1
ηC
γ-1
γ
τ
T3-T11+-1
1
ηC
γ-1
γ
τ
In[]:=
weightedObjective[{τ_},α_]:=(1-α)Wnet[τ]+αηB[τ]
In[]:=
solutions=Table[FindMaximum[{weightedObjective[{tau},w],0<=tau<=10},{tau,0.5}][[2]],{w,0,1,0.001}];
In[]:=
pareto=Table[{Wnet[tau],ηB[tau]}/.solutions[[i]],{i,1,Length@solutions}];
BEST COMPROMISE (DISTANCE METHOD)
etaMax=Max[pareto[[All,2]]];etaMin=Min[pareto[[All,2]]];wMax=Max[pareto[[All,1]]];wMin=Min[pareto[[All,1]]];
In[]:=
Print["===== MAX EFFICIENCY ====="];Print[etaMax];
===== MAX EFFICIENCY =====
0.269303
In[]:=
Print["===== MAX WORK ====="];Print[wMax];
===== MAX WORK =====
225.155
Normalize both objectives: Wnet and ηB
normData=Table[{(pareto[[i,2]]-etaMin)/(etaMax-etaMin),(pareto[[i,1]]-wMin)/(wMax-wMin)},{i,Length[pareto]}];
Compute Euclidean distance to ideal point (1,1)
dist=Table[Sqrt[(1-normData[[i,2]])^2+(1-normData[[i,1]])^2],{i,Length[normData]}];
Fetch the minimum distance
bestIdx=First@Ordering[dist,1];bestPoint=pareto[[bestIdx]];
In[]:=
idxBest=First@Ordering[dist,1]
Out[]=
999
In[]:=
bestSolution=solutions[[idxBest]];bestPareto=pareto[[idxBest]];
Display results
Print["Best compromise solution (DISTANCE):"];Print["tau = ",NumberForm[tau/.bestSolution,{6,2}]];Print["Wnet = ",NumberForm[bestPareto[[1]],{6,4}]];Print["ηB = ",NumberForm[bestPareto[[2]],{6,4}]];
Best compromise solution (DISTANCE):
tau = 8.06
Wnet = 223.2300
ηB = 0.2624
In[]:=
tauVals=Range[2,30,0.05];data=Table[{tau,ηB[tau],Wnet[tau]},{tau,tauVals}];
ShowListPlotpareto[[All,{1,2}]],,ListPlotdata[[All,{3,2}]],,Graphics[{Darker@Red,PointSize[0.015],Point[{bestPareto[[1]],bestPareto[[2]]}]}],
Out[]=
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Pareto optimization of an air-standard Brayton cycle
by Housam Binous and Ahmed Bellagi
Wolfram Community, STAFF PICKS, April 16, 2026
https://community.wolfram.com/groups/-/m/t/3688443
by Housam Binous and Ahmed Bellagi
Wolfram Community, STAFF PICKS, April 16, 2026
https://community.wolfram.com/groups/-/m/t/3688443