D2 D3-->D4 D5-->D6 D7 end E0 e0@==>Python e1@==>D1 Python e2@==>D2 Python e3@==>D3 Python e4@==>D4 Python e5@==>D5 Python e6@==>D6 E0 e7@==>HTML e8@==>D7 VFE_D1@{shape: hex, label: "$$\\vec{v} = \\frac{v_0}{L}(-y\\vec{e}_x + x\\vec{e}_y + L\\vec{e}_z)$$"} VFE_D2@{shape: hex, label: "$$\\nabla \\cdot \"> D2 D3-->D4 D5-->D6 D7 end E0 e0@==>Python e1@==>D1 Python e2@==>D2 Python e3@==>D3 Python e4@==>D4 Python e5@==>D5 Python e6@==>D6 E0 e7@==>HTML e8@==>D7 VFE_D1@{shape: hex, label: "$$\\vec{v} = \\frac{v_0}{L}(-y\\vec{e}_x + x\\vec{e}_y + L\\vec{e}_z)$$"} VFE_D2@{shape: hex, label: "$$\\nabla \\cdot \"> D2 D3-->D4 D5-->D6 D7 end E0 e0@==>Python e1@==>D1 Python e2@==>D2 Python e3@==>D3 Python e4@==>D4 Python e5@==>D5 Python e6@==>D6 E0 e7@==>HTML e8@==>D7 VFE_D1@{shape: hex, label: "$$\\vec{v} = \\frac{v_0}{L}(-y\\vec{e}_x + x\\vec{e}_y + L\\vec{e}_z)$$"} VFE_D2@{shape: hex, label: "$$\\nabla \\cdot \">

%%{init: {"flowchart": {"defaultRenderer": "elk"}}}%%
flowchart LR
E0@{shape: doc, label: "Verification of the Divergence Theorem for a Rotating Fluid Flow"}

D1@{shape: card, label: "Helical Fluid Flow"}
D2@{shape: card, label: "Diverging Fluid Flow (Source)"}
D3@{shape: card, label: "Continuity Equation: Density fading"}
D4@{shape: card, label: "Continuity Equation: Density increasing"}
D5@{shape: card, label: "Vorticity (Rigid Body Rotation)"}
D6@{shape: card, label: "Irrotational Vortex (No Local Rotation)"}
D7@{shape: card, label: "Divergence Theorem Visualization"}

Python@{shape: circ, label: "Python"}
HTML@{shape: circ, label: "HTML"}

subgraph Example
E0
end

subgraph Demo
D1-->D2
D3-->D4
D5-->D6
D7
end

E0 e0@==>Python e1@==>D1
Python e2@==>D2
Python e3@==>D3
Python e4@==>D4
Python e5@==>D5
Python e6@==>D6
E0 e7@==>HTML e8@==>D7

VFE_D1@{shape: hex, label: "$$\\\\vec{v} = \\\\frac{v_0}{L}(-y\\\\vec{e}_x + x\\\\vec{e}_y + L\\\\vec{e}_z)$$"}
VFE_D2@{shape: hex, label: "$$\\\\nabla \\\\cdot \\\\vec{v} = 2k$$"}
VFE_D3@{shape: hex, label: "$$\\\\nabla \\\\cdot \\\\vec{v} > 0 $$"}
VFE_D4@{shape: hex, label: "$$\\\\nabla \\\\cdot \\\\vec{v}$$ < 0"}
VFE_D5@{shape: hex, label: "$$\\\\vec{\\\\omega} = \\\\nabla \\\\times \\\\vec{v}$$"}
VFE_D6@{shape: hex, label: "$$\\\\nabla \\\\times \\\\vec{v} = 0$$"}
VFE_D7@{shape: hex, label: "$$\\\\vec{v}=\\\\frac{v_0}{L}\\\\left(x^1 \\\\vec{e}_2-x^2 \\\\vec{e}_1+L \\\\vec{e}_3\\\\right)$$"}

MC_D1@{shape: stadium, label: "Divergence Theorem / Incompressible Flow" }
MC_D2@{shape: stadium, label: "Non-zero Divergence (Source)"}
MC_D3@{shape: stadium, label: "Continuity Equation / Material Derivative"}
MC_D4@{shape: stadium, label: "Negative Divergence (Sink)"}
MC_D5@{shape: stadium, label: "Vorticity (The 'Curl')"}
MC_D6@{shape: stadium, label: "Irrotational Flow (Zero Curl)"}
MC_D7@{shape: stadium, label: "Divergence Theorem / Flux Balance"}

subgraph Velocity Field Equation

VFE_D1
VFE_D2
VFE_D3
VFE_D4
VFE_D5
VFE_D6
VFE_D7

subgraph Mathematical Concept
MC_D1
MC_D2
MC_D3
MC_D4
MC_D5
MC_D6
MC_D7

end

VFE_D1-->MC_D1
VFE_D2-->MC_D2
VFE_D3-->MC_D3
VFE_D4-->MC_D4
VFE_D5-->MC_D5
VFE_D6-->MC_D6
VFE_D7-->MC_D7

end

D1 e9@==>VFE_D1
D2 e10@==>VFE_D2
D3 e11@==>VFE_D3
D4 e12@==>VFE_D4
D5 e13@==>VFE_D5
D6 e14@==>VFE_D6
D7 e15@==>VFE_D7

classDef darkFill fill:#000,stroke:#333,stroke-width:2px,color:#fff,font-size:15pt
class E0,D1,D2,D3,D4,D5,D6,D7,Python,HTML,VFE_D1,VFE_D2,VFE_D3,VFE_D4,VFE_D5,VFE_D6,VFE_D7,MC_D1,MC_D2,MC_D3,MC_D4,MC_D5,MC_D6,MC_D7 darkFill

linkStyle 3,4,5,6,7,8,9,19,20,21,22,23,24 stroke:#FF5733,stroke-width:5px,stroke-dasharray:15;
linkStyle 10,11,25 stroke:#008585,stroke-width:5px,stroke-dasharray:15;
%%linkStyle 7,12 stroke:#f7c100,stroke-width:5px,stroke-dasharray:15;
%%linkStyle 9,14 stroke:#43b0f1,stroke-width:5px,stroke-dasharray:15;
%%linkStyle 11,13 stroke:#8ac926,stroke-width:5px,stroke-dasharray:15;

classDef animate stroke-dasharray: 5,5,stroke-dashoffset: 900,animation: dash 12s linear infinite;

class e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15 animate