CoaxCylindersEndFaces

model CoaxCylindersEndFaces "Leakage flux between the end planes of a inner solid cylinder and a coaxial outer hollow cylinder"
    extends FluxTubes.Interfaces.PartialLeakage;

    parameter SI.Radius r_0 = 0.01 "Radius of inner solid cylinder"
        annotation (Dialog(
            group = "Parameters",
            groupImage = "modelica://Modelica/Resources/Images/Magnetic/FluxTubes/Shapes/Leakage/CoaxCylindersEndFaces.png"));
    parameter SI.Radius r_1 = 0.017 "Inner radius of outer hollow cylinder";
    parameter SI.Radius r_2 = 0.02 "Outer radius of outer hollow cylinder";
    final parameter SI.Distance l_g = r_1 - r_0 "Radial gap length between both cylinders";
    final parameter SI.Length t = r_2 - r_1 "Radial thickness of outer hollow cylinder";
equation
    G_m = if t <= r_0 then 2 * mu_0 * (r_0 + 0.5 * l_g) * Modelica.Math.log(1 + 2 * t / l_g) else 2 * mu_0 * (r_0 + 0.5 * l_g) * Modelica.Math.log(1 + 2 * r_0 / l_g);

    annotation (Documentation(info = "<html>\n<p>\nIn\n<a href=\"modelica://Modelica.Magnetic.FluxTubes.UsersGuide.Literature\">[Ro41]</a>\nthe equations for determining the reluctance\n<img src=\"modelica://Modelica/Resources/Images/Magnetic/QuasiStatic/FluxTubes/R_m.png\">\nare summarized. As an alternative to the geometry based data a\n<a href=\"modelica://Modelica.Magnetic.QuasiStatic.FluxTubes.Basic.LeakageWithCoefficient\">generic leakage</a> model is provided in this library.\n</p></html>"));
end CoaxCylindersEndFaces;