Skip to main content

runmat_meshing_core/contracts/
size.rs

1use serde::{Deserialize, Serialize};
2
3use super::StageEvidence;
4
5#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
6pub struct SizingFieldContract {
7    pub field_id: String,
8    pub global_target_size_m: f64,
9    #[serde(default)]
10    pub min_size_m: Option<f64>,
11    #[serde(default)]
12    pub max_size_m: Option<f64>,
13    #[serde(default)]
14    pub growth_rate: Option<f64>,
15    #[serde(default)]
16    pub local_source_count: usize,
17    #[serde(default)]
18    pub anisotropic_metric_count: usize,
19    pub evidence: StageEvidence,
20}