API

Boundary Types

PenguinBCs.PressureOutletType

Pressure-outlet boundary condition with exterior pressure p_out.

For Stokes solvers this maps to σn = -p_out n.

PenguinBCs.InflowType

Advection inflow boundary condition u⋅n < 0: impose transported scalar value.

PenguinBCs.OutflowType

Advection outflow boundary marker u⋅n ≥ 0: no imposed scalar data.

Interface Types

PenguinBCs.HarmonicAnisotropyType

2D harmonic anisotropy descriptor for Gibbs-Thomson coefficients.

Stored parameters:

  • ϵ: anisotropy amplitude (scalar or callback)
  • m: symmetry fold (m=4 by default)
  • θ0: orientation offset angle (scalar or callback)
  • use_stiffness: when true, Stefan may use stiffness correction 1 + ϵ(1-m^2)cos(m(θ-θ0)) for capillarity.
PenguinBCs.GibbsThomsonType

Gibbs-Thomson thermodynamic correction used by Stefan solvers.

Base isotropic coefficients:

  • capillary: curvature coefficient σ_κ
  • kinetic: kinetic coefficient μ_Γ

Optional 2D harmonic anisotropy descriptors:

  • capillary_anisotropy
  • kinetic_anisotropy

The complete interface law is applied by Stefan code as: TΓ = Tm - capillary_eff*κΓ - kinetic_eff*VΓ.

PenguinBCs.AlloyEquilibriumType

Alloy equilibrium interface descriptor for binary-alloy sharp-interface models.

Stored coefficients:

  • k_partition: partition ratio C_{s\Gamma} = k\,C_{l\Gamma}
  • T_m: reference melting temperature
  • m_liquidus: liquidus slope in T_\Gamma = T_m + m\,C_{l\Gamma}

Evaluation

PenguinBCs.eval_bcFunction

Evaluate a boundary/interface value at spatial point x and time t.

v may be:

  • Float64 (returned directly),
  • a callback (x...),
  • or a callback (x..., t).