Table of Contents

Coolant

Models the cutting-zone cooling for the milling temperature FEM. Lives on CoolantHeatCondition(API); consumed by MillingTemperatureUtil(API) every simulation step.

Pick a cooling type

You do not need to know any heat-transfer numbers to set up cooling. In the Player control tree, open Equipment Setup → Coolant, click Select → Browse Resource…, and pick the ready-made .CoolantHeatCondition file for the cooling your machine uses — exactly the way a workpiece material file is picked:

Shipped file Pick it when
StandardForcedAir The machine only blows air at the cutter — no liquid coolant.
StandardWaterSolubleCoolant Water-based emulsion coolant, the common flood coolant. (A fresh project already carries these values.)
StandardOilBasedCoolant Neat-oil cutting fluid: better lubrication, noticeably less heat removal than water-based.

Loading a file fills the Name / Note and every property field shown below them. For a customized setup, tune the fields directly and keep the result as your own named file with Save As… — it can be loaded back later, or from another project.

That is the whole end-user setup. Everything below explains what the values mean.

NC program drives the mode

The parser reads M07/M08/M09 into CoolantMode(API) and carries it on every MachineMotionStep(API). The FEM picks the effective convection coefficient at run time from that mode.

M-code CoolantMode Coefficient source
M08 Flood CoolantConvectionCoefficient_Wdm2K (baseline of the chosen type)
M07 Mist baseline × MistFloodConvectionRatio
M09 Off OffConvectionCoefficient_Wdm2K

Before the first M07/M08/M09 the mode is UnDefined; the FEM treats it as Off.

For StandardForcedAir (dry cutting) the machine has no liquid circuit, so even M08 only means “air blast on” — its flood baseline is an air-blast coefficient, not a liquid one.

What each shipped file sets

Each shipped cooling type is also a static preset on CoolantHeatCondition(API) (StandardForcedAir, StandardWaterSolubleCoolant, StandardOilBasedCoolant) — the same pattern as WorkpieceMaterial.Al6061T6; the resource files are generated from them:

Preset / file Flood baseline W/(m²·K) Mist ratio Off W/(m²·K) Temperature °C
StandardForcedAir 100 0.5 50 25
StandardWaterSolubleCoolant 1 000 0.5 50 25
StandardOilBasedCoolant 300 0.5 50 25

The baselines are engineering defaults from the literature ranges below; when you have dynamometer / thermocouple data for your own system, tune the fields and save your own file instead. API side: ApplyPreset copies a preset in place; MatchStandardPreset maps values back to a preset name.

Properties

These are the fields shown under Name / Note in the Coolant panel:

Property Default Notes
CoolantTemperature_C 25 Room temperature inside the enclosure.
CoolantConvectionCoefficient_Wdm2K 1 000 Flood baseline. Water-based emulsion ≈ 1 000–3 000, oil ≈ 100–500, forced air ≈ 10–500.
MistFloodConvectionRatio 0.5 MQL is roughly half the heat removal of flood. See below.
OffConvectionCoefficient_Wdm2K 50 Forced air inside a running enclosure. Natural air ≈ 5–25.
Name / Note From the loaded file / preset; Save As… renames the condition after the file. Legacy projects without a name still work.

Why the mist ratio defaults to 0.5

MQL removes much less heat than flood because a thin oil aerosol has a tiny thermal mass; its main value is lubrication plus evaporative cooling, not convection. Industry handbooks place it at roughly half of flood, which gives the conservative default 0.5. Override it when you have dynamometer / thermocouple data for your own MQL system.

Note

Further reading: UNIST MQL Handbook (source of the “about half” rule), ANEBON mist-vs-flood AISI 1045 tests, Mukesh et al. IEJ May 2023 review on sustainable machining. Use these only to dig deeper — the 0.5 default is already calibrated from them.

Coolant files (WorkpieceMaterial pattern)

MachiningEquipment.CoolantHeatConditionFile tracks an optional .CoolantHeatCondition side-file, exactly like Workpiece.WorkpieceMaterialFile tracks a material file:

  • No file (default): the condition serializes inline in the .hincproj, byte-compatible with pre-pattern readers.
  • File tracked: the project save externalizes the condition as <CoolantHeatCondition><XmlSource>relPath</XmlSource></CoolantHeatCondition> and (re)writes the side-file. Loading a file installs it in place of the current condition and records the reference (XFactory.GenByFile<CoolantHeatCondition>); a file loaded from the resource folder is copied into the project on the next save (self-contained project root).

XML

<CoolantHeatCondition>
  <Name>StandardOilBasedCoolant</Name>
  <Note>Oil-based cutting fluid (neat oil).</Note>
  <CoolantTemperature_C>25</CoolantTemperature_C>
  <CoolantConvectionCoefficient_Wdm2K>300</CoolantConvectionCoefficient_Wdm2K>
  <MistFloodConvectionRatio>0.5</MistFloodConvectionRatio>
  <OffConvectionCoefficient_Wdm2K>50</OffConvectionCoefficient_Wdm2K>
</CoolantHeatCondition>

Name/Note are optional (pre-preset files omit them); omit the last two elements to accept the defaults. The same element saved standalone is the .CoolantHeatCondition file format; inside a .hincproj it may instead appear as the <XmlSource> reference shown above.