p4: fig_fix

This commit is contained in:
2026-02-03 05:07:32 +08:00
parent 79613f72fd
commit 52293e350c
3 changed files with 5 additions and 5 deletions

View File

@@ -371,7 +371,7 @@ def define_scenarios() -> List[Dict]:
elevator_fraction_knee = elevator_payload_knee / TOTAL_PAYLOAD elevator_fraction_knee = elevator_payload_knee / TOTAL_PAYLOAD
# 膝点时只需要部分低纬度发射场 # 膝点时只需要部分低纬度发射场
scenarios.append({ scenarios.append({
'name': 'Combined (Knee Point)', 'name': 'Combined (Balanced)',
'completion_years': knee_years, 'completion_years': knee_years,
'elevator_fraction': elevator_fraction_knee, # ~74.6% 'elevator_fraction': elevator_fraction_knee, # ~74.6%
'rocket_sites': LAUNCH_SITES[:5], # 只使用5个低纬度站点 'rocket_sites': LAUNCH_SITES[:5], # 只使用5个低纬度站点
@@ -863,7 +863,7 @@ def plot_pareto_with_environment(save_dir: str = '/Volumes/Files/code/mm/2026013
ax1.grid(True, alpha=0.3) ax1.grid(True, alpha=0.3)
# 标记关键点 # 标记关键点
ax1.axvline(x=139, color='red', linestyle='--', alpha=0.7, label='Knee Point (139yr)') ax1.axvline(x=139, color='red', linestyle='--', alpha=0.7, label='Balanced (139yr)')
ax1.axvline(x=186, color='green', linestyle='--', alpha=0.7, label='Elevator Only (186yr)') ax1.axvline(x=186, color='green', linestyle='--', alpha=0.7, label='Elevator Only (186yr)')
ax1.legend() ax1.legend()
@@ -949,7 +949,7 @@ def plot_mitigation_strategies(save_dir: str = '/Volumes/Files/code/mm/20260130_
bars = ax.bar(x, co2_vals, color=colors) bars = ax.bar(x, co2_vals, color=colors)
ax.set_ylabel('Total CO₂ Emissions (Mt)', fontsize=12) ax.set_ylabel('Total CO₂ Emissions (Mt)', fontsize=12)
ax.set_title('CO₂ Reduction Strategies Comparison\n(Knee Point baseline: 139 years)', fontsize=14) ax.set_title('CO₂ Reduction Strategies Comparison\n(Balanced baseline: 139 years)', fontsize=14)
ax.set_xticks(x) ax.set_xticks(x)
ax.set_xticklabels(names, rotation=15, ha='right') ax.set_xticklabels(names, rotation=15, ha='right')
ax.grid(True, alpha=0.3, axis='y') ax.grid(True, alpha=0.3, axis='y')
@@ -1097,7 +1097,7 @@ def plot_comprehensive_summary(save_dir: str = '/Volumes/Files/code/mm/20260130_
- CO₂ reduction vs Rocket: {:.0f}% (primary savings from avoiding rocket fuel production) - CO₂ reduction vs Rocket: {:.0f}% (primary savings from avoiding rocket fuel production)
- No stratospheric H₂O injection from main transport - No stratospheric H₂O injection from main transport
3. Combined (Knee Point): Best trade-off at 139 years with {:.0f} Mt CO₂. 3. Combined (Balanced): Best trade-off at 139 years with {:.0f} Mt CO₂.
- 74.6% payload via elevator, 25.4% via low-latitude rockets - 74.6% payload via elevator, 25.4% via low-latitude rockets
- Reasonable timeline with significant environmental benefit - Reasonable timeline with significant environmental benefit
@@ -1116,7 +1116,7 @@ def plot_comprehensive_summary(save_dir: str = '/Volumes/Files/code/mm/20260130_
df.loc[df['Scenario']=='Elevator Only', 'Years'].values[0], df.loc[df['Scenario']=='Elevator Only', 'Years'].values[0],
(1 - df.loc[df['Scenario']=='Elevator Only', 'CO2 Total (Mt)'].values[0] / (1 - df.loc[df['Scenario']=='Elevator Only', 'CO2 Total (Mt)'].values[0] /
df.loc[df['Scenario']=='Rocket Only', 'CO2 Total (Mt)'].values[0]) * 100, df.loc[df['Scenario']=='Rocket Only', 'CO2 Total (Mt)'].values[0]) * 100,
df.loc[df['Scenario']=='Combined (Knee Point)', 'CO2 Total (Mt)'].values[0], df.loc[df['Scenario']=='Combined (Balanced)', 'CO2 Total (Mt)'].values[0],
(1 - df.loc[df['Scenario']=='Elevator Only', 'CO2 Total (Mt)'].values[0] / (1 - df.loc[df['Scenario']=='Elevator Only', 'CO2 Total (Mt)'].values[0] /
df.loc[df['Scenario']=='Rocket Only', 'CO2 Total (Mt)'].values[0]) * 100 df.loc[df['Scenario']=='Rocket Only', 'CO2 Total (Mt)'].values[0]) * 100
) )

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 KiB

After

Width:  |  Height:  |  Size: 176 KiB