Minimalne plohe

Definicije

paketi

<< Graphics`ParametricPlot3D`;
<< Graphics`ContourPlot3D`;
<< Graphics`Colors`;
<< Graphics`Animation`;
<< Graphics`ImplicitPlot`

definicije funkcija Gaussove i srednje zakrivljenosti

ee[x_][u_, v_] := 
      FullSimplify[D[x[uu, vv], uu] . D[x[uu, vv], uu]] /. {uu -> u, 
          vv -> v}

ff[x_][u_, v_] := 
      FullSimplify[D[x[uu, vv], uu] . D[x[uu, vv], vv]] /. {uu -> u, 
          vv -> v}

gg[x_][u_, v_] := 
      FullSimplify[D[x[uu, vv], vv] . D[x[uu, vv], vv]] /. {uu -> u, 
          vv -> v}

N0[x_][u_, v_] := 
      FullSimplify[
          Cross[D[x[uu, vv], uu], D[x[uu, vv], vv]]/
            Sqrt[Cross[D[x[uu, vv], uu], D[x[uu, vv], vv]] . 
                Cross[D[x[uu, vv], uu], D[x[uu, vv], vv]]]] /. {uu -> u, 
          vv -> v}

ll[x_][u_, v_] := 
      FullSimplify[
          D[x[uu, vv], uu, uu] . N0[x][uu, vv]] /. {uu -> u, 
          vv -> v}

mm[x_][u_, v_] := 
      FullSimplify[
          D[x[uu, vv], uu, vv] . N0[x][uu, vv]] /. {uu -> u, 
          vv -> v}

nn[x_][u_, v_] := 
      FullSimplify[
          D[x[uu, vv], vv, vv] . N0[x][uu, vv]] /. {uu -> u, 
          vv -> v}

GZ[x_][u_, v_] := 
      FullSimplify[(ll[x][uu, vv]*nn[x][uu, vv] - mm[x][uu, 
                    vv]*mm[x][uu, vv])/(ee[x][uu, vv]*gg[x][
                    uu, vv] - ff[x][uu, vv]*ff[x][uu, 
                    vv])] /. {uu -> u, vv -> v}

SZ[x_][u_, v_] := 
      FullSimplify[
          1/2 (ee[x][uu, vv]*nn[x][uu, vv] - 
                  2  mm[x][uu, vv]*ff[x][uu, vv] + gg[x][uu, 
                      vv]*ll[x][uu, vv])/(ee[x][uu, vv]*gg[x][
                      uu, vv] - ff[x][uu, vv]*ff[x][uu, 
                      vv])] /. {uu -> u, vv -> v}

K1[x_][u_, v_] := 
        FullSimplify[SZ[x][u, v] - 
            Sqrt[SZ[x][u, v]^2 - GZ[x][u, v]]];

K2[x_][u_, v_] := 
      FullSimplify[SZ[x][u, v] + 
          Sqrt[SZ[x][u, v]^2 - GZ[x][u, v]]]

definicije grafičkih prikaza

dip[ins_][g_] := $DisplayFunction[
        Insert[g, ins, {1, 1}]]

ploha[f_][u_, v_][u0_, u1_, du_][v0_, v1_, dv_][
        opts___]:=ParametricPlot3D[f[u, v],{u, u0, u1, du},{v, v0, v1, dv},DisplayFunction -> 
            dip[EdgeForm[AbsoluteThickness[0.1]]],opts]

ploha1[f_][u_, v_][u0_, u1_, du_][v0_, v1_, 
          dv_][opts___]:=ParametricPlot3D[f[u, v],{u, u0, u1, du},{v, v0, v1, dv},opts]

bojagauss[f_][u_, v_][u0_, u1_, du_][v0_, v1_, 
          dv_][opts___]:=ParametricPlot3D[Append[f[u, v], Hue[GZ[f][u, v]]],{u, u0, u1, du},{v, v0, v1, dv},
Lighting -> False,opts]

Primjeri

1. Helikoid

zavojnica

ParametricPlot3D[{2*Cos[u], 2 Sin[u], 
        0.5  u, {AbsoluteThickness[2], Hue[1]}}, {u, 0, 6  Pi, 
        Pi/72}]

Show[
      ParametricPlot3D[{2*Cos[u], 2 Sin[u], v}, {u, 0, 2  Pi}, {v, 0, 
          2  Pi}, DisplayFunction -> 
          Identity], 
ParametricPlot3D[{2*Cos[u], 
          2 Sin[u], 0.5  u, {AbsoluteThickness[2], Hue[1]}}, {u, 0, 4  Pi, 
          Pi/72}, DisplayFunction -> 
          Identity], 
Graphics3D[{AbsoluteThickness[1.5], 
          Line[{{0, 0, 0}, {0, 0, 
                8}}]}], 
ViewPoint -> {3, 2, 2.5}, 
      AmbientLight -> Olive, DisplayFunction -> $DisplayFunction, 
      Axes -> None, Boxed -> False]

Show[
ParametricPlot3D[{2*Cos[u], 2 Sin[u], 
          0.5  u, {AbsoluteThickness[1.5], Hue[1]}}, {u, 0, 4  Pi, Pi/24}, 
        DisplayFunction -> 
          Identity], 
ParametricPlot3D[{2  v*Cos[u], 
          2  v* Sin[u], 0.5  u}, {u, 0, 4  Pi, Pi/24}, {v, 0, 2}, 
        DisplayFunction -> 
          Identity], 
Graphics3D[{AbsoluteThickness[1], 
          Line[{{0, 0, 0}, {0, 0, 
                8}}]}], 
ViewPoint -> {3, 2, 2.5}, 
      DisplayFunction -> $DisplayFunction, Axes -> None, 
      Boxed -> False]

ploha

xuv[u_, v_] := u*Cos[v];
yuv[u_, v_] := u*Sin[v];
zuv[a_][u_, v_] := a*v;
u0 = -2;
u1 = 2;
du = 0.2;
v0 = 0;
v1 = 3  Pi;
dv = Pi/36;
f[a_][u_, v_] := {xuv[u, v], 
        yuv[u, v], zuv[a][u, v]}

SZ[f[a]][u, v]

K1[f[a]][u, v]

K2[f[a]][u, v]

bojagauss[f[0.75]][u, v][u0, u1, du][v0, v1, dv][
      ImageSize -> {300, 450}]

Show[
      GraphicsArray[{ploha1[f[0.25]][u, v][u0, u1, du][v0, v1, 
              dv][DisplayFunction -> Identity, 
            PlotRange -> {{-2, 2}, {-2, 2}, {0, 7}}, 
            Axes -> None, 
            Boxed -> 
              False], 
ploha1[f[0.5]][u, v][u0, 
                u1, du][v0, v1, dv][DisplayFunction -> Identity, 
            PlotRange -> {{-2, 2}, {-2, 2}, {0, 7}}, 
            Axes -> None, 
            Boxed -> 
              False], 
ploha1[f[0.75]][u, v][
                u0, u1, du][v0, v1, dv][DisplayFunction -> Identity, 
            PlotRange -> {{-2, 2}, {-2, 2}, {0, 7}}, 
            Axes -> None, 
            Boxed -> 
              False]}, 
GraphicsSpacing -> {-0.2}], DisplayFunction -> $DisplayFunction, 
      ImageSize -> {600, 300}]

2. Katenoid

lancanica

Plot[1/2  Cosh[2  x], {x, -1, 1}, 
      PlotRange -> {{-1, 1}, {-0.25, 1.5}}, 
      AspectRatio -> Automatic]

Show[
      Table[ParametricPlot[{a*Cosh[x/a], x}, {x, -1.2, 1.2}, 
          PlotStyle -> {AbsoluteThickness[2], Hue[a/1.5]}, 
          DisplayFunction -> Identity, AspectRatio -> Automatic, 
          PlotRange -> {{0, 2}, {-1.2, 1.2}}], {a, 0.5, 1.5, 0.5}], 
      DisplayFunction -> $DisplayFunction]

ploha

xuv[a_][u_, v_] := 
        a*Cosh[v/a]*Cos[u];
yuv[a_][u_, v_] := 
        a*Cosh[v/a]*Sin[u];
zuv[u_, v_] := v;
u0 = 0;
u1 = 2 Pi;
du = Pi/24;
v0 = -2;
v1 = 2;
dv = Pi/24;
f[a_][u_, v_] := {xuv[a][u, v], yuv[a][u, v], 
        zuv[u, v]}

SZ[f[a]][u, v]

K1[f[a]][u, v]

K2[f[a]][u, v]

bojagauss[f[1]][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False]

Show[
      Table[ParametricPlot3D[{a*Cosh[v/a]*Cos[u], a*Cosh[v/a]*Sin[u], v, 
            FaceForm[Hue[a/1.5, 0.5, 0.4], Hue[a/1.5, 0.5, 1]]}, {u, 0, 
            3  Pi/2, Pi/24}, {v, -1.3, 1.3, 0.065}, 
          DisplayFunction -> Identity], {a, 0.5, 1.5, 
          0.5}], 

Table[
        ParametricPlot3D[{a*Cosh[x/a], 0, 
            x, {AbsoluteThickness[2], Hue[a/1.5]}}, {x, -1.3, 1.3}, 
          DisplayFunction -> Identity], {a, 0.5, 1.5, 
          0.5}], 

Table[
        ParametricPlot3D[{0, -a*Cosh[x/a], 
            x, {AbsoluteThickness[2], Hue[a/1.5]}}, {x, -1.3, 1.3}, 
          DisplayFunction -> Identity], {a, 0.5, 1.5, 
          0.5}], 

Graphics3D[{AbsoluteThickness[2], Line[{{0, 0, 2. }, {0, 0, 0}}], 
          Line[{{2.5, 0, 0}, {0, 0, 0}}], 
          Line[{{0, -2.5, 0}, {0, 0, 
                0}}]}], 

DisplayFunction -> $DisplayFunction, BoxRatios -> {0.7, 0.7, 0.7}, 
      Axes -> None, Boxed -> False, 
      ViewPoint -> {1. ,  -2.1,  1. }, Lighting -> False, 
      ImageSize -> {400, 400}]

3. Heltokat

xuv[t_][u_, v_] := 
        Cos[t]*Sinh[v]*Sin[u] + 
          Sin[t]*Cosh[v]*Cos[u];
yuv[t_][u_, v_] := -Cos[t]*Sinh[v] Cos[u] + 
          Sin[t] Cosh[v] Sin[u];
zuv[t_][u_, v_] := 
        Cos[t]*u + Sin[t]*v;
u0 = -Pi;
u1 = Pi;
du = Pi/24;
v0 = -2;
v1 = 2;
dv = 0.2;
f[t_][u_, 
        v_] := {xuv[t][u, v], yuv[t][u, v], zuv[t][u, 
          v]}

f[0][u, v]

SZ[f[t]][u, v]

K1[f[t]][u, v]

K2[f[t]][u, v]

ploha[f[Pi/3]][u, v][u0, u1, du][v0, v1, dv][
      PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}]

Show[
      GraphicsArray[{{ploha1[f[0]][u, v][u0, u1, du][v0, v1, 
                dv][PlotRange -> {{-4, 4}, {-4, 4}, {-4, 
                    4}}, DisplayFunction -> Identity, Axes -> None, 
              Boxed -> False, 
              AmbientLight -> 
                DarkOliveGreen], ploha1[f[Pi/14]][u, v][u0, u1, 
                  du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> 
                False], 
ploha1[f[Pi/7]][u, v][
                  u0, u1, du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> 
                False], 
ploha1[f[3  Pi/14]][u, 
                    v][u0, u1, du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> 
                False]}, 
{ploha1[f[2  Pi/7]][u, 
                    v][u0, u1, du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> 
                False], 
ploha1[f[5  Pi/14]][u, 
                    v][u0, u1, du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> 
                False], 
ploha1[f[3  Pi/7]][u, 
                    v][u0, u1, du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> 
                False], 
ploha1[f[Pi/2]][u, v][
                  u0, u1, du][v0, v1, dv][
              PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
              DisplayFunction -> Identity, Axes -> None, 
              Boxed -> False, 
              AmbientLight -> 
                DarkOliveGreen]}}, 
GraphicsSpacing -> -0.2], 
DisplayFunction -> $DisplayFunction, 
      ImageSize -> {800, 500}]

Table[ploha[f[t]][u, v][u0, u1, du][v0, v1, dv][
        PlotRange -> {{-4, 4}, {-4, 4}, {-4, 4}}, 
        DisplayFunction -> Identity, Axes -> None, 
        Boxed -> False, ImageSize -> {400, 400}], {t, 0, Pi/2, 
        Pi/24}]

4. Enneperova minimalna ploha

xuv[u_, v_] := u - u^3/3 + u*v^2;
yuv[u_, v_] := -v + v^3/3 - v*u^2;
zuv[u_, v_] := u^2 - v^2;
u0 = -2.7;
u1 = 2.7;
du = 0.1;
v0 = -2.2;
v1 = 2.2;
dv = 0.1;
f[u_, v_] := {xuv[u, v], yuv[u, v], zuv[u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

Show[
      GraphicsArray[
        Table[ParametricPlot3D[{u - u^3/3 + u*v^2, -v + v^3/3 - v*u^2, 
              u^2 - v^2, 
              FaceForm[SurfaceColor[Orange], 
                SurfaceColor[Violet]]}, {u, -2.7, 2.7, 
              0.1}, {v, -2.1, 2.1, 0.1}, ViewPoint -> {3, i, 2. }, 
            Axes -> None, Boxed -> False, 
            DisplayFunction -> Identity], {i, -12, 0.5, 6.1}], 
        GraphicsSpacing -> -0.2], 
      ImageSize -> {800, 200}]

bojagauss[f][u, v][u0, u1, du][v0, v1, dv][
      ViewPoint -> {3, -0.5, 2}, 
      ImageSize -> {400, 400}]

5. Hennebergova minimalna ploha

xuv[u_, v_] := 
        2  Sinh[u]*Cos[v] - 
          2/3  Sinh[3  u]*Cos[3  v];
yuv[u_, v_] := 
        2  Sinh[u]*Sin[v] + 
          2/3  Sinh[3  u]*Sin[3  v];
zuv[u_, v_] := 2  Cosh[2  u]*Cos[2  v];
u0 = 0;
u1 = 0.85;
du = 0.05;
v0 = -Pi;
v1 = Pi;
dv = Pi/72;
f[u_, v_] := {xuv[u, v], yuv[u, v], zuv[u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {0.2, -2. , 2}, 
      ImageSize -> {400, 400}]

u0 = 0.55;

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {0.2, -2, 2}, 
      ImageSize -> {400, 400}]

6. Bourova minimalna ploha

xuv[u_, v_] := 
        u*Cos[v] - 1/2*(u^2)*Cos[2*v];
yuv[u_, v_] := -u*Sin[v] - 
          1/2*(u^2)*Sin[2*v];
zuv[u_, v_] := 
        4/3*(u^(3/2))*Cos[3/2*v];
u0 = 0;
u1 =  1;
du = 0.1;
v0 = -2 Pi;
v1 = 2  Pi;
dv = Pi/64;
f[u_, v_] := {xuv[u, v], yuv[u, v], zuv[u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      ViewPoint -> {-0.5, -1.5, 1.5}]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {-0.5, -1.5, -1.5}]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {0, 0.5, -1.5}]

Show[GraphicsArray[{%, %%}, GraphicsSpacing -> -0.4], 
      ImageSize -> {600, 250}]

bojagauss[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {0, 0.5, -1.5}]

7. Minimalna ploha s astroidom kao geodezijskom linijom

astroida

astroid[n_, a_, b_][t_] := {a*Cos[t]^n, b*Sin[t]^n}

ParametricPlot[astroid[3, 8/3, 8/3][t], {t, -Pi, Pi}, 
      PlotStyle -> {Hue[1], AbsoluteThickness[1]}, 
      AspectRatio -> Automatic, 
      Ticks -> {{-8/3, 8/3}, {-8/3, 8/3}}]

ParametricPlot[{astroid[3, 1.2, 1][t], astroid[5, 1.2, 1][
          t], astroid[7, 1.2, 1][t]}, {t, -Pi, Pi}, 
      PlotStyle -> {{Hue[0.3], AbsoluteThickness[1]}, {Hue[0.7], 
            AbsoluteThickness[1]}, {Hue[1], AbsoluteThickness[1]}}, 
      AspectRatio -> Automatic, 
      Ticks -> {{-1.2, 1.2}, {-1, 
            1}}, 
PlotRange -> {{-1.3, 
            1.5}, {-1.1, 1.3}}]

ploha

xuv[u_, v_] := 
        2 Cos[u] Cosh[v] + (2 Cos[3 u] Cosh[3 v])/
            3;
yuv[u_, v_] := 
        2 Cosh[v] Sin[u] - (2 Cosh[3 v] Sin[3 u])/
            3;
zuv[u_, v_] := -2 Sin[2 u] Sinh[2 v]
u0 = -Pi;
u1 = Pi;
du = Pi/48;
v0 = -0.4;
v1 = 0.4;
dv = 0.04;
f[u_, v_] := {xuv[u, v], yuv[u, v], zuv[u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {-2.5, -1, -5}, 
      ImageSize -> {400, 400}]

v0 = -0.67;
v1 = 0.67;

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {-2.5, -1, -5}, 
      ImageSize -> {400, 400}]

v0 = -1;
v1 = 1;

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      Axes -> None, Boxed -> False, 
      ViewPoint -> {-1.25, -0.5, -2.5}, 
      ImageSize -> {400, 400}]

8. Catalanova ploha - geodezijska linija je cikloida

cikloida

cikloida[a_, b_][t_] := {a*t - b*Sin[t], a - b*Cos[t]}

ParametricPlot[cikloida[1, 1.5][t], {t, -Pi/2, 6  Pi + Pi/2}, 
      PlotStyle -> {Hue[1], AbsoluteThickness[1]}, 
      AspectRatio -> Automatic, 
      PlotRange -> {{-0.5, 6  Pi + Pi/4}, {-0.5, 3}}, 
      Ticks -> {{0, Pi, 2  Pi, 3  Pi, 4  Pi, 5  Pi, 6  Pi}, {-0.5, 
            0, 2.5}}]

ParametricPlot[cikloida[1, 1][t], {t, 0, 6  Pi}, 
      PlotStyle -> {Hue[1], AbsoluteThickness[1]}, 
      AspectRatio -> Automatic, 
      PlotRange -> {{-0.5, 6  Pi}, {-0.5, 2.5}}, 
      Ticks -> {{0, Pi, 2  Pi, 3  Pi, 4  Pi, 5  Pi, 6  Pi}, {0, 
            2}}]

ParametricPlot[cikloida[1, 0.5][t], {t, 0, 6  Pi}, 
      PlotStyle -> {Hue[1], AbsoluteThickness[1]}, 
      AspectRatio -> Automatic, 
      PlotRange -> {{-0.5, 6  Pi}, {-0.5, 2}}, 
      Ticks -> {{0, Pi, 2  Pi, 3  Pi, 4  Pi, 5  Pi, 6  Pi}, {0, 
            1.5}}]

ParametricPlot[{cikloida[1, 1.5][t], cikloida[1, 1][
          t], cikloida[1, 0.5][t]}, {t, 0, 6  Pi}, 
      PlotStyle -> {{Hue[0.7], AbsoluteThickness[1]}, {Hue[1], 
            AbsoluteThickness[1]}, {Hue[0.3], AbsoluteThickness[1]}}, 
      AspectRatio -> Automatic, 
      PlotRange -> {{-0.5, 6  Pi + 1}, {-1.5, 3}}, 
      Ticks -> {{0, Pi, 2  Pi, 3  Pi, 4  Pi, 5  Pi, 6  Pi}, {-0.5, 
            0.5, 1, 1.5, 2, 2.5}}]

ploha

xuv[u_, v_] := u - Sin[u] Cosh[v];
yuv[u_, v_] := 1 - Cos[u] Cosh[v];
zuv[u_, v_] := -4 Sin[u/2] 
          Sinh[v/2];
u0 = 0;
u1 =  6  Pi;
du = Pi/24;
v0 = -2;
v1 = 2;
dv = 0.1;
f[u_, v_] := {xuv[u, v], yuv[u, v], zuv[u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      AxesLabel -> {x, y, z}, Axes -> None, Boxed -> False, 
      ImageSize -> {600, 300}]

9. Scherkove minimalne plohe

parametarski

xuv[u_, v_] := u;
yuv[u_, v_] := v;
zuv[u_, v_] := Log[Cos[u]/Cos[v]];
u0 = -Pi/2 + 0.1;
u1 = Pi/2 - 0.1;
du = 0.1;
v0 = -Pi/2 + 0.1;
v1 = Pi/2 - 0.1;
dv = 0.1;
f[u_, v_] := {xuv[u, v], yuv[u, v], zuv[u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

ploha[f][u, v][u0, u1, du][v0, v1, dv][
      ViewPoint -> {3, 2.4, 2}, Axes -> None, 
      Boxed -> False]

implicitno

ContourPlot3D[
      E^z*Cos[x] - Cos[y], {x, -6, 6}, {y, -6, 6}, {z, -4, 4}, 
      PlotPoints -> {10, 10, 5}, Boxed -> False, 
      DisplayFunction -> 
        dip[EdgeForm[AbsoluteThickness[0.1]]]]

implicitno 5.

ContourPlot3D[
      Sin[z] - Sinh[x]*Sinh[y], {x, -5, 5}, {y, -5, 5}, {z, -1, 
        10}, PlotPoints -> {7, 7, 7}, Boxed -> False]

ContourPlot3D[
      Sin[z] - Sinh[x]*Sinh[y], {x, -5, 5}, {y, -5, 5}, {z, 10, 20}, 
      PlotPoints -> {7, 7, 7}, Boxed -> False]

Show[%, %%]

ContourPlot3D[
      Sin[y] - Sinh[z]*Sinh[x], {x, -5, 5}, {y, -1, 10}, {z, -5, 
        5}, PlotPoints -> {7, 7, 7}, Boxed -> False]

ContourPlot3D[
      Sin[y] - Sinh[z]*Sinh[x], {x, -5, 5}, {y, 10, 20}, {z, -5, 5}, 
      PlotPoints -> {7, 7, 7}, Boxed -> False]

Show[%, %%]

10. Richmondova minimalna ploha

wei[1/#^2 &, #^(n + 1) &][z];

richmondmincurve[n_][
          z_] := {-1/(2  z) - z^(2  n + 1)/(4  n + 2) - 
            I/(2  z) + I z^(2  n + 1)/(4  n + 2), 
          z^n/n};

richmondpolar[n_][t_][r_, 
          theta_] := {-Cos[t + theta]/(2  r) - (r^(1 + 2  n) 
                  Cos[t - (1 + 2  n) theta])/(2 + 4  n), -Sin[
                  t + theta]/(2  r) + (r^(1 + 2  n) 
                  Sin[t - (1 + 2  n) theta])/(2 + 4  n), (r^
                  n Cos[t - n theta])/n};

GZ[richmondpolar[1] [0]][r, theta]

ParametricPlot3D[
      Append[richmondpolar[1] [0] [r, theta], 
          Hue[GZ[richmondpolar[1] [0]] [r, theta]]] // 
        Evaluate, {r, 0.3, 1.3, 0.025}, {theta, 0, 2  Pi},  
      PlotPoints -> {20, 40}, Axes -> None, Boxed -> False, 
      Lighting -> False, ImageSize -> {400, 400}]

xuv[n_][t_][u_, 
          v_] := -Cos[t + u]/(2  v) - (v^(1 + 2  n) 
                Cos[t - (1 + 2  n) u])/(2 + 
                4  n);
yuv[n_][t_][u_, 
          v_] := -Sin[t + u]/(2  v) + (v^(1 + 2  n) 
                Sin[t - (1 + 2  n) u])/(2 + 
                4  n);
zuv[n_][t_][u_, v_] := (v^n Cos[t - n u])/
          n;
u0 = -Pi;
u1 =  Pi;
du = Pi/48;
v0 = 0.3;
v1 = 1.2;
dv = 0.05;
f[n_][t_][u_, 
        v_] := {xuv[n][t][u, v], yuv[n][t][u, 
          v], zuv[n][t][u, v]}

SZ[f][u, v]

K1[f][u, v]

K2[f][u, v]

ploha[f[1][0]][u, v][u0, u1, du][v0, v1, dv][
      AxesLabel -> {x, y, z}, Axes -> None, Boxed -> False, 
      ImageSize -> {400, 400}]

ploha[f[2][0]][u, v][u0, u1, du][v0, v1, dv][
      AxesLabel -> {x, y, z}, Axes -> None, Boxed -> False, 
      ViewPoint -> {2.3, -1.5, 3}, 
      ImageSize -> {400, 400}]

du = Pi/48;

ploha[f[3][0]][u, v][u0, u1, du][v0, v1, dv][
      AxesLabel -> {x, y, z}, Axes -> None, Boxed -> False, 
      ViewPoint -> {2.3, -1.5, 3}, 
      ImageSize -> {400, 400}]

du = Pi/48;
v0 = 0.3;
v1 = 2;

ploha[f[1][0]][u, v][u0, u1, du][v0, v1, dv][
      AxesLabel -> {x, y, z}, Axes -> None, Boxed -> False, 
      ImageSize -> {400, 400}]

11. Costina minimalna ploha

dip[ins_][g_] := $DisplayFunction[
        Insert[g, ins, {1, 1}]]

selectgraphics3d[graphics3dobj_, bound_, 
        opts___] := 
Show[
        Graphics3D[
          Select[graphics3dobj, 
(Abs[#[[1, 1, 1]]] < 
                    bound && Abs[#[[1, 1, 2]]] < 
                    bound && 
Abs[#[[1, 1, 3]]] < 
                    bound && Abs[#[[1, 2, 1]]] < 
                    bound && 
Abs[#[[1, 2, 2]]] < 
                    bound && Abs[#[[1, 2, 3]]] < 
                    bound && 
Abs[#[[1, 3, 1]]] < 
                    bound && Abs[#[[1, 3, 2]]] < 
                    bound && 
Abs[#[[1, 3, 3]]] < 
                    bound && Abs[#[[1, 4, 1]]] < 
                    bound && 
Abs[#[[1, 4, 2]]] < 
                    bound && Abs[#[[1, 4, 3]]] < 
                    bound
) &]], opts]

costa[u_, 
          v_] := {(1/2) 
            Re[-WeierstrassZeta[u + I v, {189.07272, 0}] + 3.14159 u + 
                0.35889 + 
                0.228473 (WeierstrassZeta[u + I v - 1/2, {189.07272, 0}] - 
                      WeierstrassZeta[
                        u + I v - I/2, {189.07272, 0}])], (1/2) 
            Re[-I WeierstrassZeta[u + I v, {189.07272, 0}] + 
                3.14159 v + 0.35889 - 
                0.228473 (I WeierstrassZeta[
                          u + I v - 1/2, {189.07272, 0}] - 
                      I WeierstrassZeta[u + I v - I/2, {189.07272, 0}])], 
          0.626657 
             Log[Abs[(WeierstrassP[u + I v, {189.07272, 0}] - 
                      6.87519)/(WeierstrassP[u + I v, {189.07272, 0}] + 
                      6.87519)]]};

costaplot80 = 
        ParametricPlot3D[costa[u, v], {u, 0.001, 1.001}, {v, 0.001, 1.001}, 
          PlotPoints -> 80, 
          DisplayFunction -> Identity];

selectgraphics3d[costaplot80[[1]], 8, Boxed -> False, 
      ViewPoint -> {2.9, -1.4, 1.2}, 
      PlotRange -> {{-4, 4}, {-4, 4}, {-2, 2}}, 
      DisplayFunction -> dip[EdgeForm[]]]

selectgraphics3d[costaplot80[[1]], 8, Boxed -> False, 
      ViewPoint -> {-2.9, -1.4, -1.2}, 
      PlotRange -> {{-4, 4}, {-4, 4}, {-2, 2}}, 
      DisplayFunction -> dip[EdgeForm[]]]

selectgraphics3d[costaplot80[[1]], 8, Boxed -> False, 
      ViewPoint -> {2.9, -1.4, 1.2}, 
      PlotRange -> {{-4, 4}, {-4, 4}, {-2, 0}}, 
      DisplayFunction -> dip[EdgeForm[]]]

selectgraphics3d[costaplot80[[1]], 8, Boxed -> False, 
      ViewPoint -> {-2.9, -1.4, -1.2}, 
      PlotRange -> {{-4, 4}, {-4, 4}, {0, 2}}, 
      DisplayFunction -> dip[EdgeForm[]]]

selectgraphics3d[costaplot80[[1]], 8, Boxed -> False, 
      ViewPoint -> {0, 0, 4}, 
      PlotRange -> {{-2.5, 2.5}, {-2.5, 2.5}, {-2, 2}}, 
      DisplayFunction -> dip[EdgeForm[]]]

selectgraphics3d[costaplot80[[1]], 8, Boxed -> False, 
      ViewPoint -> {0, 0, -4}, 
      PlotRange -> {{-2.5, 2.5}, {-2.5, 2.5}, {-2, 2}}, 
      DisplayFunction -> dip[EdgeForm[]]]