runmat_meshing_core/contracts/
size.rs1use 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}