--- library_name: pytorch pipeline_tag: other tags: - physics-informed-neural-network - pinn - cfd - computational-fluid-dynamics - starccm license: other --- # bedrock-checkpoints Physics-informed neural-network (PINN) surrogate trained on STAR-CCM+ RANS CFD results (coolant flow). The model maps geometry/coordinate features to the steady flow fields. Metadata below is auto-extracted from the checkpoint header. ## Checkpoint: `starccm_pinn_model_step_00390000.pt` | | | |---|---| | Training step | 390000 | | Feature schema | `canonical_local_chart_dim55_geometry_conditioned_v1` | | **Input features (semantic)** | **55** | | Encoded input dim (Fourier) | 935 = 55 raw + 55×2×8 freqs | | **Output variables** | **7** | | Hidden width | 384 | | Linear layers | 7 | | **Main network params** | **1,101,319** | | Pressure-head params | 1,485 | | **Total params** | **1,102,804** | ## Outputs (7) Order: `u, v, w, p, k, epsilon, temperature` Supervised labels: `n/a` (remaining fields are latent / physics-constrained). ## Architecture (main field MLP) Inputs are Fourier-encoded (8 frequencies, sin+cos) before the MLP. | layer | shape (in → out) | |---|---| | `mlp.net.0.weight` | 935 → 384 | | `mlp.net.2.weight` | 384 → 384 | | `mlp.net.4.weight` | 384 → 384 | | `mlp.net.6.weight` | 384 → 384 | | `mlp.net.8.weight` | 384 → 384 | | `mlp.net.10.weight` | 384 → 384 | | `mlp.net.12.weight` | 384 → 7 | A separate **pressure head** regresses a scalar pressure-drop (ΔP) per geometry from 11 geometry descriptors (`geometry_mlp: 11 → 32 → 32 → 1`). ## STAR-CCM+ physics | setting | value | |---|---| | turbulence_model | RkeTwoLayerTurbModel | | wall_treatment | KeTwoLayerAllYplusWallTreatment | | inlet_temperature_k | 298.15 | | inlet_mass_flow_lpm | 25.0 | | starccm_version | 2402.0001 / 19.02.013 | ## Input feature names (55) ``` 0. x 1. y 2. z 3. distance_to_inlet 4. distance_to_outlet 5. distance_to_wall 6. axial_inlet_to_outlet 7. radial_to_inlet_outlet_axis 8. signed_distance_proxy 9. wall_proximity 10. source_x_norm 11. source_y_norm 12. source_z_norm 13. source_axis_axial 14. source_axis_lateral_1 15. source_axis_lateral_2 16. source_axis_radial 17. chart_center_x_norm 18. chart_center_y_norm 19. chart_center_z_norm 20. chart_center_axis_axial 21. chart_center_axis_lateral_1 22. chart_center_axis_lateral_2 23. chart_local_x 24. chart_local_y 25. chart_local_z 26. chart_local_axis_axial 27. chart_local_axis_lateral_1 28. chart_local_axis_lateral_2 29. chart_radius 30. chart_log_count 31. chart_wall_distance_mean 32. chart_wall_distance_std 33. chart_cov_eig_1 34. chart_cov_eig_2 35. chart_cov_eig_3 36. chart_anisotropy 37. chart_planarity 38. wall_distance_x_minus 39. wall_distance_x_plus 40. wall_distance_y_minus 41. wall_distance_y_plus 42. wall_distance_z_minus 43. wall_distance_z_plus 44. surface_area 45. fluid_volume 46. surface_area_to_volume_ratio 47. equivalent_hydraulic_diameter 48. surface_genus 49. cross_section_area_min 50. cross_section_area_mean 51. cross_section_area_std 52. cross_section_area_min_ratio 53. number_of_strong_constrictions 54. high_curvature_surface_fraction ``` ## Loading ```python import torch ckpt = torch.load("starccm_pinn_model_step_00390000.pt", map_location="cpu", weights_only=False) model_state = ckpt["model"] # field-network weights feature_names = ckpt["feature_names"] # 55 inputs output_order = ckpt["output_order"] # 7 outputs # input standardization: ckpt["feature_mean"], ckpt["feature_scale"] # label standardization: ckpt["label_mean"], ckpt["label_scale"] ``` _Card generated from `hosseinbv/bedrock-checkpoints` checkpoint metadata._