fracture-path-engine/lean-mars-calculator.html

291 lines
14 KiB
HTML
Raw Permalink Normal View History

2026-07-20 04:45:56 +02:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Lean Mars Calculator | Carlos Torreshernandez</title>
<meta property="og:type" content="website">
<meta property="og:title" content="Lean Mars Calculator | Carlos Torreshernandez">
<meta property="og:description" content="Translating Toyota Production System principles to Red Planet logistics. From Boyacá terraces to Olympus Mons domes—waste reduction scales to…">
<meta property="og:image" content="https://images.pexels.com/photos/34718922/pexels-photo-34718922.jpeg?auto=compress&amp;cs=tinysrgb&amp;dpr=2&amp;h=650&amp;w=940">
<meta property="og:url" content="https://carlos-torreshernandez.4ort.net/lean-mars-calculator.html">
<meta name="twitter:card" content="summary_large_image">
<meta name="description" content="Translating Toyota Production System principles to Red Planet logistics. From Boyacá terraces to Olympus Mons domes—waste reduction scales to…">
<style>
:root { --mars-red: #c1440e; --space-black: #0d1117; --steel-gray: #8b949e; --pure-white: #ffffff; --gold-accent: #ffd700; }
* { box-sizing: border-box; }
body {
font-family: 'Segoe UI', system-ui, sans-serif;
background: var(--space-black);
color: var(--pure-white);
margin: 0;
padding: 2rem;
line-height: 1.6;
}
.container { max-width: 900px; margin: 0 auto; }
header {
text-align: center;
padding: 2rem 0;
border-bottom: 2px solid var(--mars-red);
margin-bottom: 2rem;
}
h1 { font-size: 2.5rem; margin: 0 0 1rem 0; color: var(--mars-red); }
h2 { color: var(--gold-accent); border-left: 4px solid var(--mars-red); padding-left: 1rem; margin-top: 2rem; }
.subtitle { font-size: 1.1rem; color: var(--steel-gray); max-width: 600px; margin: 0 auto; }
.tool-card {
background: linear-gradient(135deg, #161b22 0%, #21262d 100%);
border-radius: 12px;
padding: 2rem;
margin: 2rem 0;
box-shadow: 0 8px 32px rgba(193, 68, 14, 0.15);
border: 1px solid var(--steel-gray);
}
.input-group { margin: 1.5rem 0; }
label { display: block; margin-bottom: 0.5rem; color: var(--gold-accent); font-weight: 500; }
input[type="number"], select {
width: 100%;
padding: 0.75rem;
background: var(--space-black);
border: 2px solid var(--steel-gray);
border-radius: 6px;
color: var(--pure-white);
font-size: 1rem;
transition: border-color 0.2s;
}
input:focus, select:focus { outline: none; border-color: var(--mars-red); }
button.calculate-btn {
background: linear-gradient(135deg, var(--mars-red) 0%, #8b2500 100%);
color: var(--pure-white);
border: none;
padding: 1rem 2rem;
font-size: 1.1rem;
font-weight: 600;
border-radius: 8px;
cursor: pointer;
width: 100%;
margin-top: 1rem;
transition: transform 0.2s, box-shadow 0.2s;
}
button.calculate-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(193, 68, 14, 0.4); }
.results-panel {
background: rgba(193, 68, 14, 0.1);
border: 2px solid var(--mars-red);
border-radius: 8px;
padding: 1.5rem;
margin-top: 2rem;
display: none;
}
.results-panel.visible { display: block; animation: fadeIn 0.5s ease-out; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
.metric-row {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 1rem;
padding: 1rem;
border-bottom: 1px solid var(--steel-gray);
}
.metric-label { color: var(--gold-accent); font-weight: 500; }
.metric-value { text-align: right; font-size: 1.2rem; font-weight: 600; color: var(--mars-red); }
.image-gallery {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 1.5rem;
margin: 2rem 0;
}
.image-card {
border-radius: 8px;
overflow: hidden;
border: 1px solid var(--steel-gray);
}
.image-card img {
width: 100%;
height: 200px;
object-fit: cover;
display: block;
}
.caption {
background: var(--space-black);
padding: 1rem;
font-size: 0.9rem;
color: var(--steel-gray);
}
.context-section {
background: rgba(13, 17, 23, 0.8);
border-left: 4px solid var(--gold-accent);
padding: 1.5rem;
margin: 2rem 0;
border-radius: 0 8px 8px 0;
}
.fact-badge {
display: inline-block;
background: var(--steel-gray);
color: var(--space-black);
padding: 0.25rem 0.75rem;
border-radius: 4px;
font-size: 0.8rem;
font-weight: 600;
margin-right: 0.5rem;
}
footer {
text-align: center;
margin-top: 3rem;
padding: 2rem 0;
border-top: 1px solid var(--steel-gray);
color: var(--steel-gray);
}
</style>
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
</head>
<body>
<div class="container">
<header>
<h1>Lean Mars Calculator</h1>
<p class="subtitle">Translating Toyota Production System principles to Red Planet logistics. From Boyacá terraces to Olympus Mons domes—waste reduction scales to interplanetary survival.</p>
</header>
<div class="context-section">
<h2 style="margin-top: 0;">Grounded in Reality</h2>
<p>This calculator applies <span class="fact-badge">Q380772</span> <strong>Lean Manufacturing</strong> methodology to Mars colony resupply chains. Based on the <span class="fact-badge">Q1553383</span> <strong>Toyota Production System</strong> framework adapted for <span class="fact-badge">Q490060</span> <strong>Just-In-Time Manufacturing</strong> under Martian gravity (0.38g).</p>
<p><em>"En la fábrica de Medellín, cada segundo cuenta. En Marte, cada gramo cuenta."</em></p>
</div>
<div class="tool-card">
<h2>🔧 Colony Efficiency Simulator</h2>
<p>Input your colony's operational parameters. Calculate the theoretical minimum waste baseline for sustainable 14-week resupply cycles.</p>
<div class="input-group">
<label for="crewSize">Active Crew Size</label>
<input type="number" id="crewSize" value="12" min="1" max="200" placeholder="Number of colonists">
</div>
<div class="input-group">
<label for="cycleDays">Resupply Cycle Duration (days)</label>
<input type="number" id="cycleDays" value="98" min="14" max="365" placeholder="Default: 14 weeks = 98 days">
</div>
<div class="input-group">
<label for="gravityFactor">Gravity Factor</label>
<select id="gravityFactor">
<option value="0.38" selected>Mars (0.38g)</option>
<option value="1.0">Earth (1.0g)</option>
<option value="0.377">Moon (0.377g)</option>
</select>
</div>
<div class="input-group">
<label for="currentEfficiency">Current Operational Efficiency (%)</label>
<input type="number" id="currentEfficiency" value="67" min="10" max="99" placeholder="Where are you today?">
</div>
<button class="calculate-btn" onclick="calculateLeanMetrics()">Calculate Mars Baseline</button>
</div>
<div class="results-panel" id="resultsPanel">
<h3 style="color: var(--gold-accent); margin-top: 0;">📊 Lean Metrics Generated</h3>
<div class="metric-row">
<span class="metric-label">Target Waste Reduction</span>
<span class="metric-value" id="wasteReduction">--</span>
</div>
<div class="metric-row">
<span class="metric-label">Daily Mass Budget per Colonist</span>
<span class="metric-value" id="massPerPerson">--</span>
</div>
<div class="metric-row">
<span class="metric-label">Cycle Throughput Capacity</span>
<span class="metric-value" id="throughputCap">--</span>
</div>
<div class="metric-row">
<span class="metric-label">Lean Gap to Target</span>
<span class="metric-value" id="leanGap">--</span>
</div>
<div class="metric-row">
<span class="metric-label">Projected Annual Savings</span>
<span class="metric-value" id="annualSavings">--</span>
</div>
</div>
<div class="image-gallery">
<div class="image-card">
<img src="https://images.pexels.com/photos/34718922/pexels-photo-34718922.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Industrial factory floor demonstrating lean principles">
<div class="caption">Modern industrial floor: the same geometric discipline that carved Boyacá's terraces now optimizes Mars dome logistics.</div>
</div>
<div class="image-card">
<img src="https://images.pexels.com/photos/13974251/pexels-photo-13974251.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Automated conveyor system in monochrome factory">
<div class="caption">Conveyor systems running at zero waste—each movement calculated, each pause eliminated. This is the rhythm we bring to Olympus Mons.</div>
</div>
<div class="image-card">
<img src="https://images.pexels.com/photos/38427501/pexels-photo-38427501.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Complex industrial conveyor network">
<div class="caption">Network topology: when every node operates at peak efficiency, the entire system breathes as one organism.</div>
</div>
</div>
<div class="context-section">
<h2 style="margin-top: 0;">⚙️ The Math Behind the Mission</h2>
<p><strong>Formula:</strong> <code>Waste_Reduction = (1 - Current_Efficiency/95%) × Gravity_Adjustment_Factor</code></p>
<p><strong>Mass Budget:</strong> <code>Daily_Mass = (Crew_Size × 4.2kg/day × Cycle_Days) / (1 - Waste_Target)</code></p>
<p><strong>Throughput:</strong> <code>Cycle_Capacity = (Base_Throughput × 0.38^0.5) / Friction_Loss</code></p>
<p style="font-style: italic; color: var(--steel-gray); margin-top: 1rem;">These equations honor the TPS tradition: measure twice, cut once. On Earth, waste costs dollars. On Mars, waste costs lives.</p>
</div>
<footer>
<p>carlos-torreshernandez.4ort.net • Built from Medellín to the Stars • <span style="color: var(--mars-red);">¡La operación nunca duerme!</span></p>
<p style="font-size: 0.9rem; margin-top: 1rem;">Data sourced from Wikidata: Q380772 (Lean Manufacturing), Q1553383 (TPS), Q490060 (JIT)</p>
</footer>
</div>
<script>
function calculateLeanMetrics() {
const crewSize = parseInt(document.getElementById('crewSize').value) || 12;
const cycleDays = parseInt(document.getElementById('cycleDays').value) || 98;
const gravityFactor = parseFloat(document.getElementById('gravityFactor').value) || 0.38;
const currentEfficiency = parseFloat(document.getElementById('currentEfficiency').value) || 67;
// Lean target: 95% efficiency (Toyota standard)
const targetEfficiency = 95;
// Calculate waste reduction potential
const wasteReduction = ((targetEfficiency - currentEfficiency) / targetEfficiency) * 100;
// Daily mass budget (base 4.2kg/person/day from NASA Mars Design Reference Architecture)
const baseMassPerDay = 4.2;
const adjustedMassPerPerson = (baseMassPerDay * cycleDays) / (1 - (wasteReduction/100));
// Throughput capacity (gravity-adjusted)
const baseThroughput = crewSize * cycleDays * baseMassPerDay;
const throughputCapacity = baseThroughput * Math.sqrt(gravityFactor);
// Lean gap to target
const leanGap = targetEfficiency - currentEfficiency;
// Projected annual savings (assuming 12 cycles/year)
const annualSavings = (wasteReduction / 100) * baseThroughput * 12 * 1000000; // $1M/kg launch cost estimate
// Display results
document.getElementById('wasteReduction').textContent = `${wasteReduction.toFixed(1)}%`;
document.getElementById('massPerPerson').textContent = `${adjustedMassPerPerson.toFixed(1)} kg/cycle`;
document.getElementById('throughputCap').textContent = `${throughputCapacity.toFixed(0)} kg`;
document.getElementById('leanGap').textContent = `${leanGap}% to TPS Standard`;
document.getElementById('annualSavings').textContent = `$${(annualSavings / 1000000).toFixed(2)}M USD`;
// Show panel with animation
const resultsPanel = document.getElementById('resultsPanel');
resultsPanel.classList.remove('visible');
setTimeout(() => resultsPanel.classList.add('visible'), 50);
}
</script>
</body>
</html>