Meco Solids

From Meco Rocket Simulator Wiki

Meco Solids

Solid components model heat transfer through solid materials in rocket engine systems. They are essential for thermal analysis of combustion chambers, nozzles, and cooling systems.

Overview

The Meco Rocket Simulator supports 1 solid component type:

Component Type Purpose Key Features Applications
Solid Heat transfer modeling Multi-layer thermal analysis Chamber walls, cooling channels, nozzles

Solid Component

Overview

  • Type: Solid
  • Purpose: Heat transfer solid for modeling chamber walls, cooling channels, and thermal barriers
  • Modeling: One-dimensional transient heat conduction with finite difference discretization
  • Implementation: Uses implicit finite difference scheme with temperature-dependent boundary conditions

Parameters

Basic Parameters

  • Connection Parameters:
    • name - Component name (string)
    • branch_gas - Connected gas branch name (string)
    • branch_liquid - Connected liquid branch name (string)
  • Material Properties:
    • materialName - Material type identifier (string, must exist in materials.npz database)

Thermal Parameters

  • Wall Properties:
    • wallDelta - Wall thickness in meters (double)
    • wallDeltaSubdivisions - Number of finite difference subdivisions through thickness (size_t)
    • wallInitialT - Initial temperature in Kelvin (double)
  • Geometric Parameters:
    • chamberCriticalRadius - Critical throat radius in meters (double, converted to diameter internally)
    • chamberThroatCurvatureRadius - Throat curvature radius for Bartz correlation (double)
    • coolingChannelLandX - Cooling channel land dimension in meters (double)

Design Guidelines

Material Selection

Common rocket engine materials (from materials.npz database):

  • Copper: Excellent thermal conductivity, regenerative cooling
  • Stainless Steel: Good strength, moderate thermal properties
  • Inconel: High-temperature strength, gas generator applications
  • NARloyZ: Copper alloy (k=316 W/m·K @533K), specialized rocket applications

Note: Material properties (thermal conductivity k, density ρ, specific heat cp) are loaded from a preprocessed materials.npz database and interpolated as functions of temperature.

Thermal Mesh Resolution

  • Subdivisions: Typically 5-20 through wall thickness
  • Fine Mesh: More subdivisions for better accuracy
  • Coarse Mesh: Fewer subdivisions for faster computation
  • Critical Areas: Use finer mesh near throat and high heat flux zones

Temperature Initialization

  • Ambient Start: 300 K for room temperature startup
  • Preheated: Consider preheating for hot fire simulations
  • Previous Run: Use converged temperatures from prior analysis

Example JSON

{
  "name": "tc_head",
  "category": 5,
  "type": "Solid",
  "materialName": "Copper",
  "wallDelta": 0.003,
  "wallDeltaSubdivisions": 10,
  "wallInitialT": 300.0,
  "chamberCriticalRadius": 0.075,
  "chamberThroatCurvatureRadius": 0.02,
  "coolingChannelLandX": 0.002,
  "branch_gas": "cc",
  "branch_liquid": "tc_head"
}

Heat Transfer Modeling

Thermal Boundary Conditions

Gas Side (Hot Side)

Heat transfer from hot combustion gases using Bartz correlation:

  • Method: HeatTransfer::CoefficientBartz
  • Inputs: Gas pressure, temperature, gamma, cp, viscosity, Prandtl number
  • Geometry: Chamber diameter, critical diameter, throat curvature radius
  • Flow: Mach number, characteristic velocity, wall temperature
  • Application: Validated for nozzles with D*/rc ≈ 1, contraction/expansion angles 30°/15°
  • Accuracy: Within 50% angle variation and D*/rc < 3

Liquid Side (Cold Side)

Heat transfer to coolant flow using multiple correlations:

  • Primary Method: HeatTransfer::CoefficientGnielinski for turbulent flow
  • Alternative: HeatTransfer::CoefficientDittusBoelter (heating/cooling variants)
  • Integration: HeatTransfer::CoefficientNaraghi combines liquid-side h with:
    • Conduction through channel lands
    • Geometric effects of cooling channel configuration
    • Cell-area multiplication factor for circumferential averaging
  • Inputs: Friction factor, Reynolds number, Prandtl number, thermal conductivity, hydraulic diameter

Conduction Through Solid

Governing Equation

One-dimensional transient heat conduction with finite differences:

  • Discretization: Wall divided into wallDeltaSubdivisions cells
  • Grid spacing: dx = wallDelta / subdivisions
  • Thermal capacity: s_cp_dx = ρ × dx × cp (per unit area)
  • Thermal conductance: h_s = k / dx (between adjacent cells)

Finite Difference Implementation

Interior nodes (i = 1 to subdivisions-2):

dT/dt[i] = (h_s × (T[i-1] - T[i]) + h_s × (T[i+1] - T[i])) / s_cp_dx

Boundary nodes:

  • Gas boundary (i=0): Uses adiabatic wall temperature and Bartz coefficient
  • Liquid boundary (i=subdivisions-1): Uses liquid temperature and Naraghi coefficient

Material Properties

  • Current Implementation: Properties evaluated at default temperature (300K)
  • Future Enhancement: Temperature-dependent properties (commented code exists)
  • Properties: k (thermal conductivity), ρ (density), cp (specific heat)

Heat Transfer Correlations

Gas-Side Heat Transfer (Bartz Method)

Implementation based on "A Simple Approach for Thermal Analysis of Regenerative Cooling of Rocket - G Naraghi - IMECE2008-67988.pdf"

Correlation: Modified Bartz equation for rocket nozzles

  • Gas properties: Pressure, temperature, specific heat ratio, gas constant
  • Flow properties: Mach number, characteristic velocity
  • Geometry effects: Local diameter, throat diameter, throat curvature radius
  • Wall coupling: Uses wall temperature for property evaluation

Adiabatic Wall Temperature:

T_aw = T_recovery × (1 + recovery_factor × (γ-1)/2 × M²)

Liquid-Side Heat Transfer

Gnielinski Correlation (Primary):

  • Application: Turbulent flow in cooling channels
  • Range: 3000 < Re < 5×10⁶, 0.5 < Pr < 2000
  • Enhancement: Includes entrance effects and roughness

Dittus-Boelter Correlation (Alternative):

  • Heating mode: Power = 0.4
  • Cooling mode: Power = 0.3
  • Simpler implementation for preliminary analysis

Naraghi Integration Method: Combines liquid-side coefficient with:

  • Channel geometry: Width, height, land dimensions
  • Wall conduction: Through channel lands
  • Circumferential averaging: Using cell multiplier factor

Implementation Details

Constructor Parameters

The Solid class constructor requires these parameters in order:

  1. material_name (string) - Must exist in materials.npz database
  2. delta (double) - Wall thickness [m]
  3. subdivisions (size_t) - Number of finite difference cells
  4. initial_t (double) - Initial temperature [K]
  5. critical_branch_radius (double) - Throat radius [m] (converted to diameter)
  6. throat_curvature_radius (double) - For Bartz correlation [m]
  7. channel_land_x (double) - Channel land width [m]

Connection Requirements

  • Gas Branch: Must be BranchGas with DimType::Circle
  • Liquid Branch: Any branch type, provides cooling flow properties
  • Validation: Runtime error if gas branch is not circular

Thermal Calculation Sequence

  1. Material Properties: Load k, ρ, cp at default temperature (300K)
  2. Gas Properties: Calculate cp, μ, characteristic velocity from gas state
  3. Heat Transfer Coefficients:
    1. Gas-side: Bartz correlation → h_g
    2. Liquid-side: Gnielinski → h_l → Naraghi integration → h_l_total
  4. Boundary Temperatures:
    1. Adiabatic wall temperature from isentropic relations
    2. Liquid temperature from fluid state
  5. Finite Difference: Update temperature derivatives for all nodes

References and Implementation Notes

Primary Reference

Implementation follows: "A Simple Approach for Thermal Analysis of Regenerative Cooling of Rocket - G Naraghi - IMECE2008-67988.pdf"

Heat Transfer Constants

From ThermalConductivity namespace:

  • Copper: 342 W/m·K (@927K)
  • NARloyZ: 316 W/m·K (@533K) - specialized copper alloy

Limitations and Future Work

  • Material Properties: Currently evaluated at 300K (TODO: temperature-dependent)
  • 1D Assumption: Through-thickness conduction only
  • Bartz Correlation: Valid for specific nozzle geometries (see code comments)
  • No Radiation: Gas-side radiation effects not included

Code Structure

  • Header: src/lorensim/model/solid.h
  • Implementation: src/lorensim/model/solid.cpp
  • Heat Transfer: src/lorensim/model/heat_transfer.h/.cpp
  • Material Properties: src/lorensim/model/material_properties.h/.cpp
  • JSON Parsing: src/lorensim/model_builder/builder_json.cpp

See Also