Material domains and properties
Fluid domains assign materials to the fluid mesh. Solid thermal models define heat-transfer paths. Together, fluids and conducting solids form connected thermal regions that can contain several materials.
Fluids
Each fluid_domains entry assigns properties to a seeded region or, for one optional unseeded entry, all remaining regions.
Connected fluid regions
A connected fluid region contains cells joined through open mesh faces or linked fans. Solids and impermeable faces separate regions. A linked fan joins every fluid cell touching its complete intake and exhaust patches.
Set seed_bc_tag to an inlet, outlet, or fan boundary’s tag to assign properties throughout its connected region. The diagram uses the inlet; the outlet or either linked-fan boundary would select the same region. Seeds must have fluid cells after meshing. Walls, symmetry boundaries, and thermal conditions cannot be seeds.
For an inlet tagged air_inlet:
{
"fluid_domains": [
{
"properties": {"air": {"relative_humidity": 0.3}},
"seed_bc_tag": "air_inlet",
"tag": "channel_air"
}
]
}
Use the boundary’s final explicit or generated tag as the seed. A fan’s linking_tag pairs its patches; each patch has its own boundary tag.
Multiple fluid domains
Separate seeded entries select different regions, even when they use the same material preset.
At most one entry may be unseeded, with seed_bc_tag omitted or null. It receives all regions left after the seeded assignments.
inlet_1 and inlet_2 select separate air channels. The unseeded water entry fills the remaining cavity. All three regions are separated by solid within one simulation.The corresponding fluid entries are:
{
"fluid_domains": [
{
"properties": {"air": {}},
"seed_bc_tag": "inlet_1",
"tag": "air_1"
},
{
"properties": {"air": {}},
"seed_bc_tag": "inlet_2",
"tag": "air_2"
},
{
"properties": "water",
"seed_bc_tag": null,
"tag": "water"
}
]
}
Each seed must be unique and touch exactly one connected region; two entries cannot select the same region. Every region must receive a material, and an unseeded entry must receive some fluid cells. A mesh without fluid cells is rejected.
An unseeded entry can fill several disconnected regions. Another closed cavity here would also receive water. Cavities without flow boundaries can only receive the remainder material, so multiple such cavities cannot have different materials.
Entry fields and defaults
fluid_domains must be nonempty. Each entry requires properties: {"air": {...}}, "water", or {"custom": {...}}. The optional seed_bc_tag defaults to null.
Optional tag names must be unique across fluid domains and components. Omitted or null names become fluid_<index> using the zero-based array index. Explicit names take priority; generated names gain suffixes to avoid collisions. Boundary-condition and fan-linking tags use separate namespaces.
Omitting fluid_domains assigns air with relative humidity 0.3 to every fluid region.
Fluid properties
Vanellus provides two built-in presets:
air: humid air at sea level. Density depends on the reference temperature andrelative_humidity; thermal expansion is the inverse absolute reference temperature. Other properties use values near 20 °C. Relative humidity ranges from0to1and defaults to0.3. Moisture transport and condensation are not modeled.water: fixed water properties near 20 °C.
For another fluid, custom requires five constant properties:
densityaffects momentum and, with specific heat capacity, thermal energy transport.viscositycontrols momentum diffusion through the fluid.specific_heat_capacityis the energy required to change the temperature of a unit mass.conductivitycontrols heat conduction through the fluid.thermal_expansioncontrols the buoyancy response whenboussinesqis enabled.
Choose custom properties at a representative operating temperature and pressure. They affect flow, heat transfer, buoyancy, and the required mesh resolution.
Each fluid uses its own properties at the common reference temperature. Boundary-layer sizing uses the unweighted mean of the entries’ room-temperature kinematic viscosities; the turbulence model and inlet-derived initialization estimates remain global.
Solids
Each component’s thermal_model controls its heat transfer. Conducting components retain their own properties. Thermal regions are found automatically from the mesh and model connections, without seeds.
Conducting, insulating, and compact models
- Conducting components have resolved temperatures and exchange heat with adjacent fluid and conducting solids.
- Insulating components have no solved interior temperature field. Surfaces are adiabatic by default but can have thermal boundary conditions.
- Compact thermal models (CTMs) replace the resolved interior with a junction and resistances to active faces. They use network resistances and power instead of bulk material properties.
Cuboid and CAD components can be conducting or insulating; only cuboids support CTMs.
Connected thermal regions
Fluid and conducting-solid temperatures share one energy solve. Cells joined by heat-transfer paths form a connected thermal region, which can contain different materials and temperatures. Ordinary fluid–conducting and conducting–conducting contacts connect cells without an extra interface condition.
A CTM connects its active faces through the junction. A two-resistor model links opposing board and case faces; the other four faces are adiabatic. A STAR model links all six faces. Every active face must completely touch fluid or conducting cells.
Insulating interiors and adiabatic faces interrupt connectivity. Conducting surfaces add resistance while preserving heat transfer; linked fans connect thermal regions through transported heat.
Connectivity follows the final mesh. Vanellus checks prescribed heating and cooling separately in each isolated thermal region; cooling one region cannot balance heating another. See Isolated thermal regions and power balance for details.
Solid properties
Only conducting components require bulk properties:
conductivity, either as one isotropic value or[kx, ky, kz], to control heat conduction;density; andspecific_heat_capacity.
Density and specific heat capacity set volumetric heat capacity. Optional power is distributed uniformly over the meshed volume.
See also
- Fan and linked-fan boundaries explains how paired fan patches connect flow and heat transfer.
- Conducting and insulating domains explains which component temperatures are solved and reported.
- Compact thermal models explains junctions, active faces, and resistor networks.
- Isolated thermal regions and power balance explains heat-balance checks for disconnected regions.
- Boussinesq buoyancy and reference temperature explains how fluid properties affect buoyancy.
- API reference lists the exact fluid and solid property fields.