%% Generated by scripts/generate_reference.py; do not edit.
\makeatletter
\expandafter\def\csname tikzphysics@reference@body@physicsplatformleft\endcsname{%
\textbf{platform-left (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 5cm\\
minimum height & 2cm\\
strip width & 0.25cm\\
wall angle & -90 degrees\\
wall inset & 0cm\\
wall drop & 0cm\\
pulley edge & off; preset uses 0.5cm inset and drop\\
\end{tabular}\par
\textbf{Size aliases:} platform width = minimum width; platform depth = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, surface, pulley-center, wall-root, floor-center, wall-center, text\par
\textbf{Families:} bottom-0..100, right-0..100, surface-0..100, left-0..100, transition-0..100, wall-surface-0..100, wall-back-0..100, wall-base-0..100, wall-tip-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every platform.\par
surface runs left to right across the floor; bottom, left, and right cover its other edges. wall-surface and wall-back run from root to tip; wall-base and wall-tip span the end caps. transition runs from pulley-center to wall-root. Upward walls require zero inset and drop. Use 50 for any edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsplatformleft\endcsname{center,north,south,east,west,north east,north west,south east,south west,surface,pulley-center,wall-root,floor-center,wall-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicsplatformleft\endcsname{bottom,right,surface,left,transition,wall-surface,wall-back,wall-base,wall-tip}
\expandafter\def\csname tikzphysics@reference@lookup@platform-left\endcsname{physicsplatformleft}
\expandafter\def\csname tikzphysics@reference@lookup@physicsplatformleft\endcsname{physicsplatformleft}
\expandafter\def\csname tikzphysics@reference@lookup@platform-left-up\endcsname{physicsplatformleft}
\expandafter\def\csname tikzphysics@reference@body@physicsplatformright\endcsname{%
\textbf{platform-right (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 5cm\\
minimum height & 2cm\\
strip width & 0.25cm\\
wall angle & -90 degrees\\
wall inset & 0cm\\
wall drop & 0cm\\
pulley edge & off; preset uses 0.5cm inset and drop\\
\end{tabular}\par
\textbf{Size aliases:} platform width = minimum width; platform depth = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, surface, pulley-center, wall-root, floor-center, wall-center, text\par
\textbf{Families:} bottom-0..100, right-0..100, surface-0..100, left-0..100, transition-0..100, wall-surface-0..100, wall-back-0..100, wall-base-0..100, wall-tip-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every platform.\par
surface runs left to right across the floor; bottom, left, and right cover its other edges. wall-surface and wall-back run from root to tip; wall-base and wall-tip span the end caps. transition runs from pulley-center to wall-root. Upward walls require zero inset and drop. Use 50 for any edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsplatformright\endcsname{center,north,south,east,west,north east,north west,south east,south west,surface,pulley-center,wall-root,floor-center,wall-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicsplatformright\endcsname{bottom,right,surface,left,transition,wall-surface,wall-back,wall-base,wall-tip}
\expandafter\def\csname tikzphysics@reference@lookup@platform-right\endcsname{physicsplatformright}
\expandafter\def\csname tikzphysics@reference@lookup@physicsplatformright\endcsname{physicsplatformright}
\expandafter\def\csname tikzphysics@reference@lookup@platform-right-up\endcsname{physicsplatformright}
\expandafter\def\csname tikzphysics@reference@body@physicsplatformboth\endcsname{%
\textbf{platform (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 5cm\\
minimum height & 2cm\\
strip width & 0.25cm\\
wall angle & -90 degrees\\
left wall angle & -90 degrees\\
right wall angle & -90 degrees\\
wall inset & 0cm\\
left wall inset & 0cm\\
right wall inset & 0cm\\
wall drop & 0cm\\
left wall drop & 0cm\\
right wall drop & 0cm\\
pulley edge & off; shared preset uses 0.5cm inset and drop\\
left pulley edge & off; left-side preset uses 0.5cm inset and drop\\
right pulley edge & off; right-side preset uses 0.5cm inset and drop\\
pulley edges & off; both-side alias of pulley edge\\
\end{tabular}\par
\textbf{Size aliases:} platform width = minimum width; platform depth = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, surface, left-pulley-center, right-pulley-center, left-wall-root, right-wall-root, floor-center, left-wall-center, right-wall-center, text\par
\textbf{Families:} bottom-0..100, right-0..100, surface-0..100, left-0..100, left-transition-0..100, right-transition-0..100, left-wall-surface-0..100, left-wall-back-0..100, left-wall-base-0..100, left-wall-tip-0..100, right-wall-surface-0..100, right-wall-back-0..100, right-wall-base-0..100, right-wall-tip-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every platform.\par
surface runs left to right across the floor. Each wall has surface, back, base, and tip families with left-wall or right-wall prefixes; each transition runs from its pulley-center to wall-root. Upward walls require zero inset and drop. Use 50 for any edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsplatformboth\endcsname{center,north,south,east,west,north east,north west,south east,south west,surface,left-pulley-center,right-pulley-center,left-wall-root,right-wall-root,floor-center,left-wall-center,right-wall-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicsplatformboth\endcsname{bottom,right,surface,left,left-transition,right-transition,left-wall-surface,left-wall-back,left-wall-base,left-wall-tip,right-wall-surface,right-wall-back,right-wall-base,right-wall-tip}
\expandafter\def\csname tikzphysics@reference@lookup@platform\endcsname{physicsplatformboth}
\expandafter\def\csname tikzphysics@reference@lookup@physicsplatformboth\endcsname{physicsplatformboth}
\expandafter\def\csname tikzphysics@reference@lookup@platform-both\endcsname{physicsplatformboth}
\expandafter\def\csname tikzphysics@reference@body@physicswedge\endcsname{%
\textbf{wedge (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 4cm\\
wedge height & derived\\
wedge angle & 30 degrees\\
wedge right angle at & br\\
wedge top inset & 0cm\\
wedge top drop & 0cm\\
pulley edge & off; preset uses 0.5cm inset and 1cm drop\\
surface guide length & 0.5cm\\
\end{tabular}\par
\textbf{Size aliases:} wedge width = minimum width.\par
\textbf{Anchors:} surface-start, surface-end, center, north, south, east, west, north east, north west, south east, south west, bl, br, top, pulley-center, wall-root, transition-mid, base-mid, right-mid, slope-mid, slope-right-mid, centroid, mid, text\par
\textbf{Families:} base-0..100, right-0..100, slope-0..100, transition-0..100, surface-0..100, tangent-before-0..100, tangent-after-0..100, normal-0..100, right-surface-0..100, right-tangent-before-0..100, right-tangent-after-0..100, right-normal-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every wedge.\par
base, right, and slope follow the outline counterclockwise from bl. surface runs left to right on the primary usable incline; in top mode right-surface selects the second incline. right-mid equals right-50; slope-mid equals surface-50. A pulley edge is supported in br and bl modes, and its centroid follows the filled four-point body. Directions and normals are local to the node.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicswedge\endcsname{surface-start,surface-end,center,north,south,east,west,north east,north west,south east,south west,bl,br,top,pulley-center,wall-root,transition-mid,base-mid,right-mid,slope-mid,slope-right-mid,centroid,mid,text}
\expandafter\def\csname tikzphysics@reference@families@physicswedge\endcsname{base,right,slope,transition,surface,tangent-before,tangent-after,normal,right-surface,right-tangent-before,right-tangent-after,right-normal}
\expandafter\def\csname tikzphysics@reference@lookup@wedge\endcsname{physicswedge}
\expandafter\def\csname tikzphysics@reference@lookup@physicswedge\endcsname{physicswedge}
\expandafter\def\csname tikzphysics@reference@body@physicsground\endcsname{%
\textbf{ground (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 6cm\\
minimum height & 0.3cm\\
\end{tabular}\par
\textbf{Size aliases:} ground width = minimum width; ground depth = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right, surface, text\par
\textbf{Families:} bottom-0..100, right-0..100, surface-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every ground.\par
surface runs left to right on the top contact face; bottom, left, and right cover the other edges. Use 50 for an edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsground\endcsname{center,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right,surface,text}
\expandafter\def\csname tikzphysics@reference@families@physicsground\endcsname{bottom,right,surface,left}
\expandafter\def\csname tikzphysics@reference@lookup@ground\endcsname{physicsground}
\expandafter\def\csname tikzphysics@reference@lookup@physicsground\endcsname{physicsground}
\expandafter\def\csname tikzphysics@reference@body@physicsceiling\endcsname{%
\textbf{ceiling (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 2cm\\
minimum height & 0.3cm\\
\end{tabular}\par
\textbf{Size aliases:} ceiling width = minimum width; ceiling depth = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right, surface, text\par
\textbf{Families:} surface-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every ceiling.\par
surface runs left to right on the underside; top, left, and right cover the other edges. Use 50 for an edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsceiling\endcsname{center,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right,surface,text}
\expandafter\def\csname tikzphysics@reference@families@physicsceiling\endcsname{surface,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@ceiling\endcsname{physicsceiling}
\expandafter\def\csname tikzphysics@reference@lookup@physicsceiling\endcsname{physicsceiling}
\expandafter\def\csname tikzphysics@reference@body@physicswallleft\endcsname{%
\textbf{wall-left (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 0.3cm\\
minimum height & 3cm\\
\end{tabular}\par
\textbf{Size aliases:} wall thickness = minimum width; wall height = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right, surface, text\par
\textbf{Families:} bottom-0..100, surface-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every wall-left.\par
surface runs bottom to top on the right contact face; top, bottom, and left cover the other edges. Use 50 for an edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicswallleft\endcsname{center,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right,surface,text}
\expandafter\def\csname tikzphysics@reference@families@physicswallleft\endcsname{bottom,surface,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@wall-left\endcsname{physicswallleft}
\expandafter\def\csname tikzphysics@reference@lookup@physicswallleft\endcsname{physicswallleft}
\expandafter\def\csname tikzphysics@reference@body@physicswallright\endcsname{%
\textbf{wall-right (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 0.3cm\\
minimum height & 3cm\\
\end{tabular}\par
\textbf{Size aliases:} wall thickness = minimum width; wall height = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right, surface, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, surface-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every wall-right.\par
surface runs bottom to top on the left contact face; top, bottom, and right cover the other edges. Use 50 for an edge midpoint.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicswallright\endcsname{center,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right,surface,text}
\expandafter\def\csname tikzphysics@reference@families@physicswallright\endcsname{bottom,right,top,surface}
\expandafter\def\csname tikzphysics@reference@lookup@wall-right\endcsname{physicswallright}
\expandafter\def\csname tikzphysics@reference@lookup@physicswallright\endcsname{physicswallright}
\expandafter\def\csname tikzphysics@reference@body@physicsramp\endcsname{%
\textbf{ramp (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 8.6cm\\
ramp run & 2.6cm\\
ramp rise & derived\\
ramp angle & 30\\
ramp depth & 0.25cm\\
ramp wall height & 1.5cm\\
ramp wall width & 0.25cm\\
ramp direction & right\\
ramp guide length & 0.5cm\\
\end{tabular}\par
\textbf{Anchors:} center, surface-start, surface-mid, surface-end, floor-start, floor-mid, floor-end, ramp-foot, ramp-mid, ramp-top, wall-top, wall-mid, wall-bottom, base-start, base-end, angle-baseline, angle-label, angle-first, angle-second, text\par
\textbf{Families:} floor-0..100, incline-0..100, wall-surface-0..100, wall-back-0..100, wall-tip-0..100, base-0..100, end-0..100, surface-0..100, tangent-before-0..100, tangent-after-0..100, normal-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every ramp.\par
surface follows floor plus incline by distance; floor and incline select each component. wall-surface, wall-back, wall-tip, base, and end cover the remaining outline. At the sharp joint the tangent uses the incline side.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsramp\endcsname{center,surface-start,surface-mid,surface-end,floor-start,floor-mid,floor-end,ramp-foot,ramp-mid,ramp-top,wall-top,wall-mid,wall-bottom,base-start,base-end,angle-baseline,angle-label,angle-first,angle-second,text}
\expandafter\def\csname tikzphysics@reference@families@physicsramp\endcsname{floor,incline,wall-surface,wall-back,wall-tip,base,end,surface,tangent-before,tangent-after,normal}
\expandafter\def\csname tikzphysics@reference@lookup@ramp\endcsname{physicsramp}
\expandafter\def\csname tikzphysics@reference@lookup@physicsramp\endcsname{physicsramp}
\expandafter\def\csname tikzphysics@reference@lookup@ramp-left\endcsname{physicsramp}
\expandafter\def\csname tikzphysics@reference@body@physicscurvedramp\endcsname{%
\textbf{curved-ramp (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
curved ramp floor length & 3.75cm\\
curved ramp radius & 4cm\\
curved ramp angle & 90\\
curved ramp back extension & 1cm\\
ramp depth & 0.25cm\\
ramp direction & right\\
ramp guide length & 0.5cm\\
\end{tabular}\par
\textbf{Anchors:} center, surface-start, surface-mid, surface-end, curve-center, curve-start, curve-mid, curve-end, floor-start, floor-mid, floor-end, base-start, base-end, back-top, back-bottom, text\par
\textbf{Families:} floor-0..100, start-0..100, base-0..100, back-0..100, top-0..100, surface-0..100, curve-0..100, tangent-before-0..100, tangent-after-0..100, normal-0..100, curve-tangent-before-0..100, curve-tangent-after-0..100, curve-normal-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every curved-ramp.\par
surface follows floor plus arc by distance; curve follows the arc only. floor, start, base, back, and top cover the remaining boundary.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscurvedramp\endcsname{center,surface-start,surface-mid,surface-end,curve-center,curve-start,curve-mid,curve-end,floor-start,floor-mid,floor-end,base-start,base-end,back-top,back-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicscurvedramp\endcsname{floor,start,base,back,top,surface,curve,tangent-before,tangent-after,normal,curve-tangent-before,curve-tangent-after,curve-normal}
\expandafter\def\csname tikzphysics@reference@lookup@curved-ramp\endcsname{physicscurvedramp}
\expandafter\def\csname tikzphysics@reference@lookup@physicscurvedramp\endcsname{physicscurvedramp}
\expandafter\def\csname tikzphysics@reference@lookup@curved-ramp-left\endcsname{physicscurvedramp}
\expandafter\def\csname tikzphysics@reference@body@physicstracknode\endcsname{%
\textbf{track (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
track length & 4cm\\
track rise & 1cm\\
track rough start & 0\\
track rough end & 0\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, joint-left, joint-right, text\par
\textbf{Families:} surface-0..100, tangent-before-0..100, tangent-after-0..100, normal-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every track.\par
surface is distance along the three joined straight segments, left to right. At joints tangent uses the outgoing section. Connect another node with anchor=start at the preceding end. Tangent and inward/left-normal guide points are 0.2 cm from contact. Optional rough interval is a percentage range marked with hatching.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicstracknode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,joint-left,joint-right,text}
\expandafter\def\csname tikzphysics@reference@families@physicstracknode\endcsname{surface,tangent-before,tangent-after,normal}
\expandafter\def\csname tikzphysics@reference@lookup@track\endcsname{physicstracknode}
\expandafter\def\csname tikzphysics@reference@lookup@physicstracknode\endcsname{physicstracknode}
\expandafter\def\csname tikzphysics@reference@body@physicscircularbowlnode\endcsname{%
\textbf{circular bowl (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
circular bowl radius & 1.4cm\\
circular bowl rough start & 0\\
circular bowl rough end & 0\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} surface-0..100, tangent-before-0..100, tangent-after-0..100, normal-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every circular bowl.\par
surface follows the lower semicircle left to right. Tangent and inward/left-normal guide points are 0.2 cm from contact. Optional rough interval is a percentage range marked with hatching.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscircularbowlnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicscircularbowlnode\endcsname{surface,tangent-before,tangent-after,normal}
\expandafter\def\csname tikzphysics@reference@lookup@circular bowl\endcsname{physicscircularbowlnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscircularbowlnode\endcsname{physicscircularbowlnode}
\expandafter\def\csname tikzphysics@reference@body@physicslooptracknode\endcsname{%
\textbf{loop track (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
loop track radius & 1.4cm\\
loop track rough start & 0\\
loop track rough end & 0\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} surface-0..100, tangent-before-0..100, tangent-after-0..100, normal-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every loop track.\par
surface starts at the bottom and runs counterclockwise around the full loop. Tangent and inward/left-normal guide points are 0.2 cm from contact. Optional rough interval is a percentage range marked with hatching.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicslooptracknode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicslooptracknode\endcsname{surface,tangent-before,tangent-after,normal}
\expandafter\def\csname tikzphysics@reference@lookup@loop track\endcsname{physicslooptracknode}
\expandafter\def\csname tikzphysics@reference@lookup@physicslooptracknode\endcsname{physicslooptracknode}
\expandafter\def\csname tikzphysics@reference@body@physicsblock\endcsname{%
\textbf{block (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 1cm\\
minimum height & 1cm\\
\end{tabular}\par
\textbf{Size aliases:} block width = minimum width; block height = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base, base east, base west, mid, mid east, mid west, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100; Bare numeric anchors remain angles in degrees, as in ordinary TikZ.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every block.\par
bottom, right, top, left follow the boundary counterclockwise. Use 0 for an edge start, 50 for its midpoint, 100 for its end.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsblock\endcsname{center,north,south,east,west,north east,north west,south east,south west,base,base east,base west,mid,mid east,mid west,text}
\expandafter\def\csname tikzphysics@reference@families@physicsblock\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@block\endcsname{physicsblock}
\expandafter\def\csname tikzphysics@reference@lookup@physicsblock\endcsname{physicsblock}
\expandafter\def\csname tikzphysics@reference@body@physicspulley\endcsname{%
\textbf{pulley (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum size & 1cm\\
pulley axle radius & 1.5pt\\
pulley axle color & black\\
\end{tabular}\par
\textbf{Size aliases:} pulley diameter = minimum size.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base, base east, base west, mid, mid east, mid west, text\par
\textbf{Families:} rim-0..100; Bare numeric anchors remain angles in degrees, as in ordinary TikZ.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every pulley.\par
rim starts at the rightmost point and runs counterclockwise around the circle. 25 is north, 50 west, 75 south, and 100 returns to the start.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspulley\endcsname{center,north,south,east,west,north east,north west,south east,south west,base,base east,base west,mid,mid east,mid west,text}
\expandafter\def\csname tikzphysics@reference@families@physicspulley\endcsname{rim}
\expandafter\def\csname tikzphysics@reference@lookup@pulley\endcsname{physicspulley}
\expandafter\def\csname tikzphysics@reference@lookup@physicspulley\endcsname{physicspulley}
\expandafter\def\csname tikzphysics@reference@body@physicsparticle\endcsname{%
\textbf{particle (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum size & 3mm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base, base east, base west, mid, mid east, mid west, text\par
\textbf{Families:} rim-0..100; Bare numeric anchors remain angles in degrees, as in ordinary TikZ.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every particle.\par
rim starts at the rightmost point and runs counterclockwise around the circle. 25 is north, 50 west, 75 south, and 100 returns to the start.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsparticle\endcsname{center,north,south,east,west,north east,north west,south east,south west,base,base east,base west,mid,mid east,mid west,text}
\expandafter\def\csname tikzphysics@reference@families@physicsparticle\endcsname{rim}
\expandafter\def\csname tikzphysics@reference@lookup@particle\endcsname{physicsparticle}
\expandafter\def\csname tikzphysics@reference@lookup@physicsparticle\endcsname{physicsparticle}
\expandafter\def\csname tikzphysics@reference@body@physicsdisk\endcsname{%
\textbf{disk (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum size & 15mm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base, base east, base west, mid, mid east, mid west, text\par
\textbf{Families:} rim-0..100; Bare numeric anchors remain angles in degrees, as in ordinary TikZ.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every disk.\par
rim starts at the rightmost point and runs counterclockwise around the circle. 25 is north, 50 west, 75 south, and 100 returns to the start.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsdisk\endcsname{center,north,south,east,west,north east,north west,south east,south west,base,base east,base west,mid,mid east,mid west,text}
\expandafter\def\csname tikzphysics@reference@families@physicsdisk\endcsname{rim}
\expandafter\def\csname tikzphysics@reference@lookup@disk\endcsname{physicsdisk}
\expandafter\def\csname tikzphysics@reference@lookup@physicsdisk\endcsname{physicsdisk}
\expandafter\def\csname tikzphysics@reference@body@physicsring\endcsname{%
\textbf{ring (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum size & 15mm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base, base east, base west, mid, mid east, mid west, text\par
\textbf{Families:} rim-0..100; Bare numeric anchors remain angles in degrees, as in ordinary TikZ.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every ring.\par
rim starts at the rightmost point and runs counterclockwise around the circle. 25 is north, 50 west, 75 south, and 100 returns to the start.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsring\endcsname{center,north,south,east,west,north east,north west,south east,south west,base,base east,base west,mid,mid east,mid west,text}
\expandafter\def\csname tikzphysics@reference@families@physicsring\endcsname{rim}
\expandafter\def\csname tikzphysics@reference@lookup@ring\endcsname{physicsring}
\expandafter\def\csname tikzphysics@reference@lookup@physicsring\endcsname{physicsring}
\expandafter\def\csname tikzphysics@reference@body@physicsspring\endcsname{%
\textbf{spring (node and path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 3cm (node)\\
minimum height & 0pt (node)\\
pre length & 5pt\\
post length & 5pt\\
amplitude & 4.5pt\\
segment length & 4.5pt\\
aspect & 0.5\\
\end{tabular}\par
\textbf{Size aliases:} spring length = minimum width.\par
\textbf{Anchors:} center, start, end, coil-start, coil-end, north, south, east, west, north east, south west, north west, south east, text\par
\textbf{Families:} axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every spring.\par
Use draw[spring] (A)--(B) for a two-point connection, or node[spring] (S) {} for a positioned coil. Node length defaults to 3cm; spring length and minimum width set its length. start/end are exact axis attachments, coil-start/coil-end delimit the leads, and axis-0..100 samples the straight axis, not the coil wire. show anchors/show keys apply to nodes; physicshelp{spring} describes both forms. Lead lengths may be zero; their sum must be smaller than the node length. amplitude and segment length must be positive.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsspring\endcsname{center,start,end,coil-start,coil-end,north,south,east,west,north east,south west,north west,south east,text}
\expandafter\def\csname tikzphysics@reference@families@physicsspring\endcsname{axis}
\expandafter\def\csname tikzphysics@reference@lookup@spring\endcsname{physicsspring}
\expandafter\def\csname tikzphysics@reference@lookup@physicsspring\endcsname{physicsspring}
\expandafter\def\csname tikzphysics@reference@lookup@physics spring\endcsname{physicsspring}
\expandafter\def\csname tikzphysics@reference@body@physicsrope\endcsname{%
\textbf{rope (path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
line width & inherited\\
over pulley & required node name\\
string route & surface-right\\
string start solution & 2\\
string end solution & 1\\
string wrap & clockwise\\
\end{tabular}\par
\textbf{Anchors:} No private anchors; use path endpoints and nodes along the path.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every rope.\par
Use draw[rope] (A) to[over pulley=P] (B). Endpoints must lie outside a circular pulley. Labels on to sit on the final straight segment. shortest changes wrap only, not the tangent pair.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrope\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsrope\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@rope\endcsname{physicsrope}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrope\endcsname{physicsrope}
\expandafter\def\csname tikzphysics@reference@lookup@physics rope\endcsname{physicsrope}
\expandafter\def\csname tikzphysics@reference@body@physicsforce\endcsname{%
\textbf{force (path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
line width & inherited\\
\end{tabular}\par
\textbf{Anchors:} No private anchors; use path endpoints and nodes along the path.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every force.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsforce\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsforce\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@force\endcsname{physicsforce}
\expandafter\def\csname tikzphysics@reference@lookup@physicsforce\endcsname{physicsforce}
\expandafter\def\csname tikzphysics@reference@lookup@physics force\endcsname{physicsforce}
\expandafter\def\csname tikzphysics@reference@body@physicsvelocity\endcsname{%
\textbf{velocity (path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
line width & inherited\\
\end{tabular}\par
\textbf{Anchors:} No private anchors; use path endpoints and nodes along the path.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every velocity.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsvelocity\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsvelocity\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@velocity\endcsname{physicsvelocity}
\expandafter\def\csname tikzphysics@reference@lookup@physicsvelocity\endcsname{physicsvelocity}
\expandafter\def\csname tikzphysics@reference@lookup@physics velocity\endcsname{physicsvelocity}
\expandafter\def\csname tikzphysics@reference@body@physicsacceleration\endcsname{%
\textbf{acceleration (path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
line width & inherited\\
\end{tabular}\par
\textbf{Anchors:} No private anchors; use path endpoints and nodes along the path.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every acceleration.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsacceleration\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsacceleration\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@acceleration\endcsname{physicsacceleration}
\expandafter\def\csname tikzphysics@reference@lookup@physicsacceleration\endcsname{physicsacceleration}
\expandafter\def\csname tikzphysics@reference@lookup@physics acceleration\endcsname{physicsacceleration}
\expandafter\def\csname tikzphysics@reference@body@physicstorque\endcsname{%
\textbf{torque (path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
line width & inherited\\
\end{tabular}\par
\textbf{Anchors:} No private anchors; use path endpoints and nodes along the path.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every torque.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicstorque\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicstorque\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@torque\endcsname{physicstorque}
\expandafter\def\csname tikzphysics@reference@lookup@physicstorque\endcsname{physicstorque}
\expandafter\def\csname tikzphysics@reference@lookup@physics torque\endcsname{physicstorque}
\expandafter\def\csname tikzphysics@reference@body@physicsrod\endcsname{%
\textbf{rod (path)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
line width & inherited\\
\end{tabular}\par
\textbf{Anchors:} No private anchors; use path endpoints and nodes along the path.\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every rod.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrod\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsrod\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@rod\endcsname{physicsrod}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrod\endcsname{physicsrod}
\expandafter\def\csname tikzphysics@reference@lookup@physics rod\endcsname{physicsrod}
\expandafter\def\csname tikzphysics@reference@body@physicspinsupport\endcsname{%
\textbf{pin-support (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
support size & 6mm\\
\end{tabular}\par
\textbf{Anchors:} pivot, base, left, right\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every support.\par
Use pic (S) {pin-support}; anchors are coordinates (S-pivot), (S-base), (S-left), (S-right).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspinsupport\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicspinsupport\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@pin-support\endcsname{physicspinsupport}
\expandafter\def\csname tikzphysics@reference@lookup@physicspinsupport\endcsname{physicspinsupport}
\expandafter\def\csname tikzphysics@reference@lookup@physics pin-support\endcsname{physicspinsupport}
\expandafter\def\csname tikzphysics@reference@body@physicsrollersupport\endcsname{%
\textbf{roller-support (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
support size & 6mm\\
\end{tabular}\par
\textbf{Anchors:} pivot, base, left, right\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every support.\par
Use pic (S) {roller-support}; anchors are coordinates (S-pivot), (S-base), (S-left), (S-right).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrollersupport\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsrollersupport\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@roller-support\endcsname{physicsrollersupport}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrollersupport\endcsname{physicsrollersupport}
\expandafter\def\csname tikzphysics@reference@lookup@physics roller-support\endcsname{physicsrollersupport}
\expandafter\def\csname tikzphysics@reference@body@physicspendulum\endcsname{%
\textbf{pendulum (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pendulum length & 2cm\\
pendulum angle & 30 degrees\\
\end{tabular}\par
\textbf{Anchors:} pivot, bob (node)\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every pendulum.\par
Use pic (P) {pendulum}. Angle is measured from downward vertical; positive swings right. Length is pivot to bob centre. Use (P-pivot) and (P-bob.center).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspendulum\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicspendulum\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@pendulum\endcsname{physicspendulum}
\expandafter\def\csname tikzphysics@reference@lookup@physicspendulum\endcsname{physicspendulum}
\expandafter\def\csname tikzphysics@reference@lookup@physics pendulum\endcsname{physicspendulum}
\expandafter\def\csname tikzphysics@reference@body@physicsbeamnode\endcsname{%
\textbf{beam (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
beam length & 3cm\\
beam thickness & .25cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, pivot, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every beam.\par
axis runs left to right; boundary families run counterclockwise. rod node preserves the existing rod path style.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsbeamnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,pivot,text}
\expandafter\def\csname tikzphysics@reference@families@physicsbeamnode\endcsname{bottom,right,top,left,axis}
\expandafter\def\csname tikzphysics@reference@lookup@beam\endcsname{physicsbeamnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsbeamnode\endcsname{physicsbeamnode}
\expandafter\def\csname tikzphysics@reference@body@physicsdampernode\endcsname{%
\textbf{damper (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
damper length & 3cm\\
damper width & .7cm\\
damper position & .5\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, piston, text\par
\textbf{Families:} axis-0..100, piston-0..100, top-0..100, bottom-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every damper.\par
piston runs bottom to top; position is a visual stroke fraction, not a force law.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsdampernode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,piston,text}
\expandafter\def\csname tikzphysics@reference@families@physicsdampernode\endcsname{axis,piston,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@damper\endcsname{physicsdampernode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsdampernode\endcsname{physicsdampernode}
\expandafter\def\csname tikzphysics@reference@body@physicscompoundpulleynode\endcsname{%
\textbf{compound pulley (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
compound pulley radius & 1cm\\
compound pulley inner radius & .55cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, axle, text\par
\textbf{Families:} rim-0..100, inner-rim-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every compound pulley.\par
Two concentric drums share one axle. Both rims start at the rightmost point and run counterclockwise. This is a stepped pulley, not an automatically routed tackle.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscompoundpulleynode\endcsname{center,north,south,east,west,north east,north west,south east,south west,axle,text}
\expandafter\def\csname tikzphysics@reference@families@physicscompoundpulleynode\endcsname{rim,inner-rim}
\expandafter\def\csname tikzphysics@reference@lookup@compound pulley\endcsname{physicscompoundpulleynode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscompoundpulleynode\endcsname{physicscompoundpulleynode}
\expandafter\def\csname tikzphysics@reference@body@physicsphysicalpendulumnode\endcsname{%
\textbf{physical pendulum (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
physical pendulum length & 3cm\\
physical pendulum width & .45cm\\
physical pendulum pivot & .1\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, pivot, mass-center, tip, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every physical pendulum.\par
Uniform rigid bar. axis runs top to bottom; pivot is a fraction from the top. Use anchor=pivot and rotate to suspend it.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsphysicalpendulumnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,pivot,mass-center,tip,text}
\expandafter\def\csname tikzphysics@reference@families@physicsphysicalpendulumnode\endcsname{bottom,right,top,left,axis}
\expandafter\def\csname tikzphysics@reference@lookup@physical pendulum\endcsname{physicsphysicalpendulumnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsphysicalpendulumnode\endcsname{physicsphysicalpendulumnode}
\expandafter\def\csname tikzphysics@reference@body@physicspolarelement\endcsname{%
\textbf{polar element (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 1.8cm\\
element outer radius & 2cm\\
element radial thickness & derived\\
element start angle & 30 degrees\\
element delta angle & 30 degrees\\
element dimension offset & 4mm\\
element radius label & r\\
element radial label & dr\\
element angular label & d theta\\
element arc label & r d theta\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, north, south, east, west, north east, north west, south east, south west, centroid, inner-start, inner-mid, inner-end, outer-start, outer-mid, outer-end, start-mid, end-mid\par
\textbf{Families:} inner-0..100, outer-0..100, start-0..100, end-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every polar element.\par
An annular sector from inner-start to outer-end. Set inner radius to zero for a sector or delta angle to 360 degrees for a full ring.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspolarelement\endcsname{center,text,north,south,east,west,north east,north west,south east,south west,centroid,inner-start,inner-mid,inner-end,outer-start,outer-mid,outer-end,start-mid,end-mid}
\expandafter\def\csname tikzphysics@reference@families@physicspolarelement\endcsname{inner,outer,start,end}
\expandafter\def\csname tikzphysics@reference@lookup@polar element\endcsname{physicspolarelement}
\expandafter\def\csname tikzphysics@reference@lookup@physicspolarelement\endcsname{physicspolarelement}
\expandafter\def\csname tikzphysics@reference@body@physicsdifferentialsector\endcsname{%
\textbf{differential sector (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 0cm\\
element outer radius & 2cm\\
element radial thickness & derived\\
element start angle & 30 degrees\\
element delta angle & 30 degrees\\
element dimension offset & 4mm\\
element radius label & r\\
element angular label & d theta\\
element arc label & r d theta\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, north, south, east, west, north east, north west, south east, south west, centroid, inner-start, inner-mid, inner-end, outer-start, outer-mid, outer-end, start-mid, end-mid\par
\textbf{Families:} inner-0..100, outer-0..100, start-0..100, end-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every differential sector.\par
A polar-element preset with zero inner radius. The outer arc represents r d theta and numeric families follow every boundary.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsdifferentialsector\endcsname{center,text,north,south,east,west,north east,north west,south east,south west,centroid,inner-start,inner-mid,inner-end,outer-start,outer-mid,outer-end,start-mid,end-mid}
\expandafter\def\csname tikzphysics@reference@families@physicsdifferentialsector\endcsname{inner,outer,start,end}
\expandafter\def\csname tikzphysics@reference@lookup@differential sector\endcsname{physicsdifferentialsector}
\expandafter\def\csname tikzphysics@reference@lookup@physicsdifferentialsector\endcsname{physicsdifferentialsector}
\expandafter\def\csname tikzphysics@reference@body@physicsdifferentialring\endcsname{%
\textbf{differential ring (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 1.8cm\\
element outer radius & 2cm\\
element radial thickness & derived\\
element delta angle & 360 degrees\\
element radius label & r\\
element radial label & dr\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, north, south, east, west, north east, north west, south east, south west, centroid, inner-start, inner-mid, inner-end, outer-start, outer-mid, outer-end, start-mid, end-mid\par
\textbf{Families:} inner-0..100, outer-0..100, start-0..100, end-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every differential ring.\par
A polar-element preset with a 360-degree sweep. Use source element on an unwrapped ring to copy its radii.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsdifferentialring\endcsname{center,text,north,south,east,west,north east,north west,south east,south west,centroid,inner-start,inner-mid,inner-end,outer-start,outer-mid,outer-end,start-mid,end-mid}
\expandafter\def\csname tikzphysics@reference@families@physicsdifferentialring\endcsname{inner,outer,start,end}
\expandafter\def\csname tikzphysics@reference@lookup@differential ring\endcsname{physicsdifferentialring}
\expandafter\def\csname tikzphysics@reference@lookup@physicsdifferentialring\endcsname{physicsdifferentialring}
\expandafter\def\csname tikzphysics@reference@body@physicsunwrappedring\endcsname{%
\textbf{unwrapped ring (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 1.8cm\\
element outer radius & 2cm\\
element radial thickness & derived\\
source element & optional named element\\
element circumference label & 2 pi r\\
element radial label & dr\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, centroid, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every unwrapped ring.\par
A differential approximation with width 2 pi times the inner reference radius and height equal to the radial thickness. source element copies both radii from a named polar element.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsunwrappedring\endcsname{center,text,centroid,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right}
\expandafter\def\csname tikzphysics@reference@families@physicsunwrappedring\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@unwrapped ring\endcsname{physicsunwrappedring}
\expandafter\def\csname tikzphysics@reference@lookup@physicsunwrappedring\endcsname{physicsunwrappedring}
\expandafter\def\csname tikzphysics@reference@body@physicssphericalshell\endcsname{%
\textbf{spherical shell (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 1cm\\
element outer radius & derived\\
element radial thickness & 1.5mm\\
element delta angle & 360 degrees\\
element radius label & r\\
element radial label & dr\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, north, south, east, west, north east, north west, south east, south west, centroid, inner-start, inner-mid, inner-end, outer-start, outer-mid, outer-end, start-mid, end-mid\par
\textbf{Families:} inner-0..100, outer-0..100, start-0..100, end-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every spherical shell.\par
A concentric differential shell shown in section. Its full-sweep anchors and radial geometry match the spherical-shell construction.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssphericalshell\endcsname{center,text,north,south,east,west,north east,north west,south east,south west,centroid,inner-start,inner-mid,inner-end,outer-start,outer-mid,outer-end,start-mid,end-mid}
\expandafter\def\csname tikzphysics@reference@families@physicssphericalshell\endcsname{inner,outer,start,end}
\expandafter\def\csname tikzphysics@reference@lookup@spherical shell\endcsname{physicssphericalshell}
\expandafter\def\csname tikzphysics@reference@lookup@physicssphericalshell\endcsname{physicssphericalshell}
\expandafter\def\csname tikzphysics@reference@body@physicshollowsphere\endcsname{%
\textbf{hollow sphere (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 1cm\\
element outer radius & 2cm\\
element radial thickness & derived\\
element delta angle & 360 degrees\\
element cavity radius label & a\\
element body radius label & R\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, north, south, east, west, north east, north west, south east, south west, centroid, inner-start, inner-mid, inner-end, outer-start, outer-mid, outer-end, start-mid, end-mid\par
\textbf{Families:} inner-0..100, outer-0..100, start-0..100, end-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every hollow sphere.\par
A finite spherical wall shown in section, with independent inner and outer radii.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicshollowsphere\endcsname{center,text,north,south,east,west,north east,north west,south east,south west,centroid,inner-start,inner-mid,inner-end,outer-start,outer-mid,outer-end,start-mid,end-mid}
\expandafter\def\csname tikzphysics@reference@families@physicshollowsphere\endcsname{inner,outer,start,end}
\expandafter\def\csname tikzphysics@reference@lookup@hollow sphere\endcsname{physicshollowsphere}
\expandafter\def\csname tikzphysics@reference@lookup@physicshollowsphere\endcsname{physicshollowsphere}
\expandafter\def\csname tikzphysics@reference@body@physicsrectangularelement\endcsname{%
\textbf{rectangular element (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element width & 8mm\\
element height & 6mm\\
element width label & dx\\
element height label & dy\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, centroid, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every rectangular element.\par
A Cartesian differential area with independent width and height, complete boundary anchors, and optional dimension labels.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrectangularelement\endcsname{center,text,centroid,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right}
\expandafter\def\csname tikzphysics@reference@families@physicsrectangularelement\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@rectangular element\endcsname{physicsrectangularelement}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrectangularelement\endcsname{physicsrectangularelement}
\expandafter\def\csname tikzphysics@reference@body@physicsrectangularstrip\endcsname{%
\textbf{rectangular strip (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element width & 4cm\\
element height & 2mm\\
element width label & b\\
element height label & dx\\
show dimensions & off\\
\end{tabular}\par
\textbf{Anchors:} center, text, centroid, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every rectangular strip.\par
A full-width strip preset. Change its width and differential thickness independently.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrectangularstrip\endcsname{center,text,centroid,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right}
\expandafter\def\csname tikzphysics@reference@families@physicsrectangularstrip\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@rectangular strip\endcsname{physicsrectangularstrip}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrectangularstrip\endcsname{physicsrectangularstrip}
\expandafter\def\csname tikzphysics@reference@body@physicsrectangularsheet\endcsname{%
\textbf{rectangular sheet (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element width & 5cm\\
element height & 3cm\\
\end{tabular}\par
\textbf{Anchors:} center, text, centroid, north, south, east, west, north east, north west, south east, south west, top-left, top-right, bottom-left, bottom-right\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every rectangular sheet.\par
A finite unshaded sheet node used alone or as the body in a sheet element diagram.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrectangularsheet\endcsname{center,text,centroid,north,south,east,west,north east,north west,south east,south west,top-left,top-right,bottom-left,bottom-right}
\expandafter\def\csname tikzphysics@reference@families@physicsrectangularsheet\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@rectangular sheet\endcsname{physicsrectangularsheet}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrectangularsheet\endcsname{physicsrectangularsheet}
\expandafter\def\csname tikzphysics@reference@body@physicsdifferentialringdiagram\endcsname{%
\textbf{differential ring diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 1cm\\
element outer radius & 1.2cm\\
element radial thickness & derived\\
element body radius & 2cm\\
element diagram gap & 5mm\\
element center dot radius & 1.2pt\\
show dimensions & on for both parts\\
\end{tabular}\par
\textbf{Anchors:} center, body-north, body-south, body-east, body-west, ring (node), strip (node)\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every differential ring diagram.\par
Use pic (D) {differential ring diagram={...}}. It keeps the body circle, ring, centre mark, and unwrapped strip together. Components are (D-ring) and (D-strip).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsdifferentialringdiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsdifferentialringdiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@differential ring diagram\endcsname{physicsdifferentialringdiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicsdifferentialringdiagram\endcsname{physicsdifferentialringdiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics differential ring diagram\endcsname{physicsdifferentialringdiagram}
\expandafter\def\csname tikzphysics@reference@body@physicssphereshelldiagram\endcsname{%
\textbf{sphere shell diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element body radius & 2cm\\
element inner radius & 1cm\\
element radial thickness & 1.5mm\\
element formula label & dV = 4 pi r squared dr\\
\end{tabular}\par
\textbf{Anchors:} center, body (node), shell (node), formula-anchor\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every sphere shell diagram.\par
A solid sphere with a highlighted spherical shell. Components are (S-body) and (S-shell); (S-center) marks the common centre.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssphereshelldiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicssphereshelldiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@sphere shell diagram\endcsname{physicssphereshelldiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicssphereshelldiagram\endcsname{physicssphereshelldiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics sphere shell diagram\endcsname{physicssphereshelldiagram}
\expandafter\def\csname tikzphysics@reference@body@physicssphereslicediagram\endcsname{%
\textbf{sphere slice diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element body radius & 2cm\\
element axial thickness & 2mm\\
element position & 0.35 in (-1\\
element projection ratio & 0.24\\
element axial label & dx\\
element formula label & dV = pi y squared dx\\
\end{tabular}\par
\textbf{Anchors:} center, body (node), slice (node), formula-anchor\par
\textbf{Families:} disk-rim-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every sphere slice diagram.\par
A solid sphere with a projected disk slice at a signed normalized axial position. Components are (S-body) and (S-slice).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssphereslicediagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicssphereslicediagram\endcsname{disk-rim}
\expandafter\def\csname tikzphysics@reference@lookup@sphere slice diagram\endcsname{physicssphereslicediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicssphereslicediagram\endcsname{physicssphereslicediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics sphere slice diagram\endcsname{physicssphereslicediagram}
\expandafter\def\csname tikzphysics@reference@body@physicshollowspherediagram\endcsname{%
\textbf{hollow sphere diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element inner radius & 9mm\\
element outer radius & 2cm\\
element cavity radius label & a\\
element body radius label & R\\
element formula label & V = 4 pi over 3 times (R cubed - a cubed)\\
\end{tabular}\par
\textbf{Anchors:} center, body-north, body-south, wall (node), formula-anchor\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every hollow sphere diagram.\par
A hollow sphere in section. Component (H-wall) exposes the inner and outer boundaries.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicshollowspherediagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicshollowspherediagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@hollow sphere diagram\endcsname{physicshollowspherediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicshollowspherediagram\endcsname{physicshollowspherediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics hollow sphere diagram\endcsname{physicshollowspherediagram}
\expandafter\def\csname tikzphysics@reference@body@physicscylindershelldiagram\endcsname{%
\textbf{cylinder shell diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element body radius & 1.6cm\\
element body height & 3.4cm\\
element inner radius & 9mm\\
element radial thickness & 1.5mm\\
element projection ratio & 0.25\\
element formula label & dV = 2 pi r h dr\\
\end{tabular}\par
\textbf{Anchors:} center, body (node), shell or slice (node), formula-anchor\par
\textbf{Families:} body-rim-0..100, shell-outer-rim-0..100, shell-inner-rim-0..100, height-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every cylinder shell diagram.\par
A projected cylinder with a radial cylindrical shell. Components are (C-body) and (C-shell).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscylindershelldiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicscylindershelldiagram\endcsname{body-rim,shell-outer-rim,shell-inner-rim,height}
\expandafter\def\csname tikzphysics@reference@lookup@cylinder shell diagram\endcsname{physicscylindershelldiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicscylindershelldiagram\endcsname{physicscylindershelldiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics cylinder shell diagram\endcsname{physicscylindershelldiagram}
\expandafter\def\csname tikzphysics@reference@body@physicscylinderslicediagram\endcsname{%
\textbf{cylinder slice diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element body radius & 1.6cm\\
element body height & 3.4cm\\
element axial thickness & 2mm\\
element position & 0.55\\
element projection ratio & 0.25\\
element axial label & dz\\
element formula label & dV = pi R squared dz\\
\end{tabular}\par
\textbf{Anchors:} center, body (node), shell or slice (node), formula-anchor\par
\textbf{Families:} body-rim-0..100, slice-top-rim-0..100, slice-bottom-rim-0..100, height-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every cylinder slice diagram.\par
A projected cylinder with an axial disk slice. Components are (C-body) and (C-slice).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscylinderslicediagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicscylinderslicediagram\endcsname{body-rim,slice-top-rim,slice-bottom-rim,height}
\expandafter\def\csname tikzphysics@reference@lookup@cylinder slice diagram\endcsname{physicscylinderslicediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicscylinderslicediagram\endcsname{physicscylinderslicediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics cylinder slice diagram\endcsname{physicscylinderslicediagram}
\expandafter\def\csname tikzphysics@reference@body@physicsconeslicediagram\endcsname{%
\textbf{cone slice diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element body radius & 1.8cm\\
element body height & 4cm\\
element axial thickness & 2mm\\
element position & 0.58 from apex\\
element projection ratio & 0.24\\
element axial label & dx\\
element formula label & dV = pi r(x) squared dx\\
\end{tabular}\par
\textbf{Anchors:} center, apex, base, body (node), slice (node), formula-anchor\par
\textbf{Families:} body-rim-0..100, slice-top-rim-0..100, slice-bottom-rim-0..100, height-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every cone slice diagram.\par
A projected cone with a thin disk slice. element position is measured from apex to base. Components are (K-body) and (K-slice).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconeslicediagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsconeslicediagram\endcsname{body-rim,slice-top-rim,slice-bottom-rim,height}
\expandafter\def\csname tikzphysics@reference@lookup@cone slice diagram\endcsname{physicsconeslicediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconeslicediagram\endcsname{physicsconeslicediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics cone slice diagram\endcsname{physicsconeslicediagram}
\expandafter\def\csname tikzphysics@reference@body@physicssheetelementdiagram\endcsname{%
\textbf{sheet element diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
element body width & 5cm\\
element body height & 3cm\\
element width & 8mm\\
element height & 6mm\\
element position & 0.58\\
element transverse position & 0.58\\
element formula label & dA = dx dy\\
\end{tabular}\par
\textbf{Anchors:} center, body (node), element (node), formula-anchor\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every sheet element diagram.\par
A rectangular sheet with a named Cartesian element. Components are (A-body) and (A-element).\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssheetelementdiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicssheetelementdiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@sheet element diagram\endcsname{physicssheetelementdiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicssheetelementdiagram\endcsname{physicssheetelementdiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics sheet element diagram\endcsname{physicssheetelementdiagram}
\expandafter\def\csname tikzphysics@reference@body@physicssolidcylindernode\endcsname{%
\textbf{solid cylinder (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
solid cylinder radius & 1cm\\
solid cylinder height & 2.5cm\\
solid cylinder depth & .25\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base-center, top-center, text\par
\textbf{Families:} axis-0..100, bottom-rim-0..100, top-rim-0..100, generator-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every solid cylinder.\par
Projected wireframe: rims start at the right and run counterclockwise; axis and right generator run bottom to top. Depth is ellipse compression, not a 3D camera.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssolidcylindernode\endcsname{center,north,south,east,west,north east,north west,south east,south west,base-center,top-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicssolidcylindernode\endcsname{axis,bottom-rim,top-rim,generator}
\expandafter\def\csname tikzphysics@reference@lookup@solid cylinder\endcsname{physicssolidcylindernode}
\expandafter\def\csname tikzphysics@reference@lookup@physicssolidcylindernode\endcsname{physicssolidcylindernode}
\expandafter\def\csname tikzphysics@reference@body@physicssolidconenode\endcsname{%
\textbf{solid cone (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
solid cone radius & 1cm\\
solid cone height & 2.5cm\\
solid cone depth & .25\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base-center, top-center, apex, text\par
\textbf{Families:} axis-0..100, bottom-rim-0..100, top-rim-0..100, generator-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every solid cone.\par
Projected wireframe: rims start at the right and run counterclockwise; axis and right generator run bottom to top. Depth is ellipse compression, not a 3D camera.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssolidconenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,base-center,top-center,apex,text}
\expandafter\def\csname tikzphysics@reference@families@physicssolidconenode\endcsname{axis,bottom-rim,top-rim,generator}
\expandafter\def\csname tikzphysics@reference@lookup@solid cone\endcsname{physicssolidconenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicssolidconenode\endcsname{physicssolidconenode}
\expandafter\def\csname tikzphysics@reference@body@physicssolidfrustumnode\endcsname{%
\textbf{solid frustum (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
solid frustum radius & 1cm\\
solid frustum height & 2.5cm\\
solid frustum depth & .25\\
solid frustum top ratio & .5\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base-center, top-center, text\par
\textbf{Families:} axis-0..100, bottom-rim-0..100, top-rim-0..100, generator-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every solid frustum.\par
Projected wireframe: rims start at the right and run counterclockwise; axis and right generator run bottom to top. Depth is ellipse compression, not a 3D camera.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssolidfrustumnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,base-center,top-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicssolidfrustumnode\endcsname{axis,bottom-rim,top-rim,generator}
\expandafter\def\csname tikzphysics@reference@lookup@solid frustum\endcsname{physicssolidfrustumnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicssolidfrustumnode\endcsname{physicssolidfrustumnode}
\expandafter\def\csname tikzphysics@reference@body@physicscylindricalshellnode\endcsname{%
\textbf{cylindrical shell (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
cylindrical shell radius & 1cm\\
cylindrical shell height & 2.5cm\\
cylindrical shell depth & .25\\
cylindrical shell thickness & .2cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base-center, top-center, text\par
\textbf{Families:} axis-0..100, bottom-rim-0..100, top-rim-0..100, generator-0..100, inner-bottom-rim-0..100, inner-top-rim-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every cylindrical shell.\par
Projected wireframe: rims start at the right and run counterclockwise; axis and right generator run bottom to top. Depth is ellipse compression, not a 3D camera.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscylindricalshellnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,base-center,top-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicscylindricalshellnode\endcsname{axis,bottom-rim,top-rim,generator,inner-bottom-rim,inner-top-rim}
\expandafter\def\csname tikzphysics@reference@lookup@cylindrical shell\endcsname{physicscylindricalshellnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscylindricalshellnode\endcsname{physicscylindricalshellnode}
\expandafter\def\csname tikzphysics@reference@body@physicsconicalshellnode\endcsname{%
\textbf{conical shell (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
conical shell radius & 1cm\\
conical shell height & 2.5cm\\
conical shell depth & .25\\
conical shell top ratio & .5\\
conical shell thickness & .2cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base-center, top-center, text\par
\textbf{Families:} axis-0..100, bottom-rim-0..100, top-rim-0..100, generator-0..100, inner-bottom-rim-0..100, inner-top-rim-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every conical shell.\par
Projected wireframe: rims start at the right and run counterclockwise; axis and right generator run bottom to top. Depth is ellipse compression, not a 3D camera. Conical shell is a hollow frustum; thickness is radial at the base and scales with top ratio.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconicalshellnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,base-center,top-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconicalshellnode\endcsname{axis,bottom-rim,top-rim,generator,inner-bottom-rim,inner-top-rim}
\expandafter\def\csname tikzphysics@reference@lookup@conical shell\endcsname{physicsconicalshellnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconicalshellnode\endcsname{physicsconicalshellnode}
\expandafter\def\csname tikzphysics@reference@body@physicshemispherenode\endcsname{%
\textbf{hemisphere (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
hemisphere radius & 1.2cm\\
hemisphere depth & .25\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, base-center, apex, text\par
\textbf{Families:} rim-0..100, meridian-0..100, axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every hemisphere.\par
Upper hemisphere in wireframe projection; meridian runs left to right over the dome, rim counterclockwise, axis from base centre to apex.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicshemispherenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,base-center,apex,text}
\expandafter\def\csname tikzphysics@reference@families@physicshemispherenode\endcsname{rim,meridian,axis}
\expandafter\def\csname tikzphysics@reference@lookup@hemisphere\endcsname{physicshemispherenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicshemispherenode\endcsname{physicshemispherenode}
\expandafter\def\csname tikzphysics@reference@body@physicsutube\endcsname{%
\textbf{u tube diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 2cm\\
fluid height & 4cm\\
fluid tube width & .3cm\\
fluid left level & .75\\
fluid right level & .55\\
fluid level & .65\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, left-surface, right-surface, interface, upper-surface\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every u tube.\par
Two-liquid U tube. level adds a second liquid only above left level. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsutube\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsutube\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@u tube diagram\endcsname{physicsutube}
\expandafter\def\csname tikzphysics@reference@lookup@physicsutube\endcsname{physicsutube}
\expandafter\def\csname tikzphysics@reference@lookup@physics u tube diagram\endcsname{physicsutube}
\expandafter\def\csname tikzphysics@reference@body@physicsgasmanometer\endcsname{%
\textbf{gas manometer (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 1.8cm\\
fluid height & 3.8cm\\
fluid tube width & .3cm\\
fluid left level & .45\\
fluid right level & .8\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, left-surface, right-surface, gas\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every gas manometer.\par
Gas reservoir connected to a U tube. body label names the gas. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsgasmanometer\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsgasmanometer\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@gas manometer\endcsname{physicsgasmanometer}
\expandafter\def\csname tikzphysics@reference@lookup@physicsgasmanometer\endcsname{physicsgasmanometer}
\expandafter\def\csname tikzphysics@reference@lookup@physics gas manometer\endcsname{physicsgasmanometer}
\expandafter\def\csname tikzphysics@reference@body@physicshydraulicpress\endcsname{%
\textbf{hydraulic press (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 4cm\\
fluid height & 3.5cm\\
fluid tube width & .3cm\\
fluid left level & .4\\
fluid right level & .8\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, large-piston, small-piston\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every hydraulic press.\par
Large piston width is 0.32 times width; tube width sets the small piston. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicshydraulicpress\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicshydraulicpress\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@hydraulic press\endcsname{physicshydraulicpress}
\expandafter\def\csname tikzphysics@reference@lookup@physicshydraulicpress\endcsname{physicshydraulicpress}
\expandafter\def\csname tikzphysics@reference@lookup@physics hydraulic press\endcsname{physicshydraulicpress}
\expandafter\def\csname tikzphysics@reference@body@physicsfluidcylinder\endcsname{%
\textbf{fluid cylinder diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 1.6cm\\
fluid height & 3.2cm\\
fluid level & .65\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, surface\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every fluid cylinder.\par
Projected cylinder with an elliptical liquid surface. width is the diameter. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsfluidcylinder\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsfluidcylinder\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@fluid cylinder diagram\endcsname{physicsfluidcylinder}
\expandafter\def\csname tikzphysics@reference@lookup@physicsfluidcylinder\endcsname{physicsfluidcylinder}
\expandafter\def\csname tikzphysics@reference@lookup@physics fluid cylinder diagram\endcsname{physicsfluidcylinder}
\expandafter\def\csname tikzphysics@reference@body@physicsfluidtank\endcsname{%
\textbf{fluid tank diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3cm\\
fluid height & 3cm\\
fluid left level & .7\\
fluid right level & .7\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, left-surface, right-surface, surface\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every fluid tank.\par
Open vessel. Equal endpoint levels give a horizontal free surface. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsfluidtank\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsfluidtank\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@fluid tank diagram\endcsname{physicsfluidtank}
\expandafter\def\csname tikzphysics@reference@lookup@physicsfluidtank\endcsname{physicsfluidtank}
\expandafter\def\csname tikzphysics@reference@lookup@physics fluid tank diagram\endcsname{physicsfluidtank}
\expandafter\def\csname tikzphysics@reference@body@physicspressureelement\endcsname{%
\textbf{pressure element diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 2cm\\
fluid height & .65cm\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every pressure element.\par
Projected horizontal fluid element with inward pressure forces. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspressureelement\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicspressureelement\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@pressure element diagram\endcsname{physicspressureelement}
\expandafter\def\csname tikzphysics@reference@lookup@physicspressureelement\endcsname{physicspressureelement}
\expandafter\def\csname tikzphysics@reference@lookup@physics pressure element diagram\endcsname{physicspressureelement}
\expandafter\def\csname tikzphysics@reference@body@physicsrotatingtube\endcsname{%
\textbf{rotating tube (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 5cm\\
fluid height & .5cm\\
fluid tube width & .3cm\\
fluid level & .48\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, element-left, element-right\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every rotating tube.\par
Horizontal tube with a differential section. level locates its left face along width. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrotatingtube\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsrotatingtube\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@rotating tube\endcsname{physicsrotatingtube}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrotatingtube\endcsname{physicsrotatingtube}
\expandafter\def\csname tikzphysics@reference@lookup@physics rotating tube\endcsname{physicsrotatingtube}
\expandafter\def\csname tikzphysics@reference@body@physicsrotatingfluid\endcsname{%
\textbf{rotating fluid diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3cm\\
fluid height & 3.5cm\\
fluid level & .5\\
fluid bend & .35\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, vertex, rim-surface\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every rotating fluid.\par
Parabolic surface. level is the vertex height; bend is the wall-to-vertex rise divided by height. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrotatingfluid\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsrotatingfluid\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@rotating fluid diagram\endcsname{physicsrotatingfluid}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrotatingfluid\endcsname{physicsrotatingfluid}
\expandafter\def\csname tikzphysics@reference@lookup@physics rotating fluid diagram\endcsname{physicsrotatingfluid}
\expandafter\def\csname tikzphysics@reference@body@physicsbuoyancy\endcsname{%
\textbf{buoyancy (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3cm\\
fluid height & 3cm\\
fluid left level & .8\\
fluid right level & .8\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, left-surface, right-surface, surface, body\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every buoyancy.\par
Immersed body with schematic inward pressure arrows. Arrow lengths do not encode pressure magnitude. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsbuoyancy\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsbuoyancy\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@buoyancy\endcsname{physicsbuoyancy}
\expandafter\def\csname tikzphysics@reference@lookup@physicsbuoyancy\endcsname{physicsbuoyancy}
\expandafter\def\csname tikzphysics@reference@lookup@physics buoyancy\endcsname{physicsbuoyancy}
\expandafter\def\csname tikzphysics@reference@body@physicsflowtube\endcsname{%
\textbf{flow tube diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 5cm\\
fluid height & 1.3cm\\
fluid bend & .45\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, inlet, outlet\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every flow tube.\par
Curved flow tube; outlet height is 0.55 times inlet height. bend controls vertical curvature. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsflowtube\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsflowtube\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@flow tube diagram\endcsname{physicsflowtube}
\expandafter\def\csname tikzphysics@reference@lookup@physicsflowtube\endcsname{physicsflowtube}
\expandafter\def\csname tikzphysics@reference@lookup@physics flow tube diagram\endcsname{physicsflowtube}
\expandafter\def\csname tikzphysics@reference@body@physicsmeniscus\endcsname{%
\textbf{meniscus diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 1.2cm\\
fluid height & 2.7cm\\
fluid level & .7\\
fluid bend & .2\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, contact-left, contact-right, surface\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every meniscus.\par
Positive bend is concave; negative bend is convex. Contact angle is measured through the liquid. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsmeniscus\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsmeniscus\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@meniscus diagram\endcsname{physicsmeniscus}
\expandafter\def\csname tikzphysics@reference@lookup@physicsmeniscus\endcsname{physicsmeniscus}
\expandafter\def\csname tikzphysics@reference@lookup@physics meniscus diagram\endcsname{physicsmeniscus}
\expandafter\def\csname tikzphysics@reference@body@physicscapillary\endcsname{%
\textbf{capillary (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 4cm\\
fluid height & 3cm\\
fluid level & .35\\
fluid left level & .7\\
fluid bend & .12\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, contact-left, contact-right, reservoir\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every capillary.\par
Capillary rise. level is the reservoir surface and left level is the contact-line height. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscapillary\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicscapillary\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@capillary\endcsname{physicscapillary}
\expandafter\def\csname tikzphysics@reference@lookup@physicscapillary\endcsname{physicscapillary}
\expandafter\def\csname tikzphysics@reference@lookup@physics capillary\endcsname{physicscapillary}
\expandafter\def\csname tikzphysics@reference@body@physicssurfacetensionring\endcsname{%
\textbf{surface tension ring (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3cm\\
fluid height & 1cm\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every surface tension ring.\par
Projected circular contact line. width and height are the ellipse diameters. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicssurfacetensionring\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicssurfacetensionring\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@surface tension ring\endcsname{physicssurfacetensionring}
\expandafter\def\csname tikzphysics@reference@lookup@physicssurfacetensionring\endcsname{physicssurfacetensionring}
\expandafter\def\csname tikzphysics@reference@lookup@physics surface tension ring\endcsname{physicssurfacetensionring}
\expandafter\def\csname tikzphysics@reference@body@physicsliquidring\endcsname{%
\textbf{liquid ring diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3.5cm\\
fluid tube width & .4cm\\
fluid angle & 225\\
fluid sweep & 70\\
\end{tabular}\par
\textbf{Anchors:} origin, center, bottom, top, left, right, liquid-start, liquid-end\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every liquid ring.\par
Annular liquid sector. width is outer diameter, tube width is radial thickness. Angles use degrees counterclockwise from right. Use (F-origin), (F-center), and the listed (F-...) coordinates; these are pic coordinates, not node anchors.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsliquidring\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsliquidring\endcsname{}
\expandafter\def\csname tikzphysics@reference@lookup@liquid ring diagram\endcsname{physicsliquidring}
\expandafter\def\csname tikzphysics@reference@lookup@physicsliquidring\endcsname{physicsliquidring}
\expandafter\def\csname tikzphysics@reference@lookup@physics liquid ring diagram\endcsname{physicsliquidring}
\expandafter\def\csname tikzphysics@reference@body@physicsfluidtanknode\endcsname{%
\textbf{fluid tank (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3cm\\
fluid height & 3cm\\
fluid left level & .7\\
fluid right level & .7\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, left-surface, right-surface, surface, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} surface-0..100, bottom-0..100, right-0..100, left-0..100, bottom-left-0..100, bottom-right-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every fluid tank.\par
surface runs left to right. bottom, right, left and the two rounded bottom corners follow the drawn outline counterclockwise.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsfluidtanknode\endcsname{center,north,south,east,west,north east,north west,south east,south west,left-surface,right-surface,surface,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsfluidtanknode\endcsname{surface,bottom,right,left,bottom-left,bottom-right}
\expandafter\def\csname tikzphysics@reference@lookup@fluid tank\endcsname{physicsfluidtanknode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsfluidtanknode\endcsname{physicsfluidtanknode}
\expandafter\def\csname tikzphysics@reference@body@physicsmeniscusnode\endcsname{%
\textbf{meniscus (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 1.2cm\\
fluid height & 2.7cm\\
fluid level & .7\\
fluid bend & .2\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, left-surface, right-surface, surface, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} surface-0..100, bottom-0..100, right-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every meniscus.\par
surface follows the cubic liquid boundary from left to right. bottom, right and left follow the vessel boundary counterclockwise.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsmeniscusnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,left-surface,right-surface,surface,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsmeniscusnode\endcsname{surface,bottom,right,left}
\expandafter\def\csname tikzphysics@reference@lookup@meniscus\endcsname{physicsmeniscusnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsmeniscusnode\endcsname{physicsmeniscusnode}
\expandafter\def\csname tikzphysics@reference@body@physicsrotatingfluidnode\endcsname{%
\textbf{rotating fluid (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3cm\\
fluid height & 3.5cm\\
fluid level & .5\\
fluid bend & .35\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, left-surface, right-surface, surface, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} surface-0..100, bottom-0..100, right-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every rotating fluid.\par
surface follows the parabola from left to right. bottom, right and left follow the vessel boundary counterclockwise.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrotatingfluidnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,left-surface,right-surface,surface,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsrotatingfluidnode\endcsname{surface,bottom,right,left}
\expandafter\def\csname tikzphysics@reference@lookup@rotating fluid\endcsname{physicsrotatingfluidnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrotatingfluidnode\endcsname{physicsrotatingfluidnode}
\expandafter\def\csname tikzphysics@reference@body@physicsfluidcylindernode\endcsname{%
\textbf{fluid cylinder (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 1.6cm\\
fluid height & 3.2cm\\
fluid level & .65\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, left-surface, right-surface, surface, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} surface-0..100, surface-rim-0..100, top-0..100, bottom-0..100, right-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every fluid cylinder.\par
surface is the left-to-right diameter of the liquid ellipse; surface-rim, top and bottom are full ellipse boundaries, starting at the rightmost point and running counterclockwise. left and right cover the straight walls.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsfluidcylindernode\endcsname{center,north,south,east,west,north east,north west,south east,south west,left-surface,right-surface,surface,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsfluidcylindernode\endcsname{surface,surface-rim,top,bottom,right,left}
\expandafter\def\csname tikzphysics@reference@lookup@fluid cylinder\endcsname{physicsfluidcylindernode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsfluidcylindernode\endcsname{physicsfluidcylindernode}
\expandafter\def\csname tikzphysics@reference@body@physicspressureelementnode\endcsname{%
\textbf{pressure element (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 2cm\\
fluid height & .65cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, inlet, outlet, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} inlet-0..100, outlet-0..100, inlet-rim-0..100, outlet-rim-0..100, axis-0..100, top-0..100, bottom-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every pressure element.\par
inlet and outlet run bottom to top across their projected faces. inlet-rim and outlet-rim run counterclockwise from the rightmost point. axis joins their centres left to right; top and bottom cover the straight outline.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspressureelementnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,inlet,outlet,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicspressureelementnode\endcsname{inlet,outlet,inlet-rim,outlet-rim,axis,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@pressure element\endcsname{physicspressureelementnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicspressureelementnode\endcsname{physicspressureelementnode}
\expandafter\def\csname tikzphysics@reference@body@physicsflowtubenode\endcsname{%
\textbf{flow tube (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 5cm\\
fluid height & 1.3cm\\
fluid bend & .45\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, inlet, outlet, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} inlet-0..100, outlet-0..100, axis-0..100, bottom-0..100, top-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every flow tube.\par
inlet and outlet run bottom to top; axis follows their curved midline left to right. bottom runs left to right, top right to left on the actual cubic outline. Curve percentages use the cubic parameter.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsflowtubenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,inlet,outlet,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsflowtubenode\endcsname{inlet,outlet,axis,bottom,top}
\expandafter\def\csname tikzphysics@reference@lookup@flow tube\endcsname{physicsflowtubenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsflowtubenode\endcsname{physicsflowtubenode}
\expandafter\def\csname tikzphysics@reference@body@physicsliquidringnode\endcsname{%
\textbf{liquid ring (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 3.5cm\\
fluid tube width & .4cm\\
fluid angle & 225\\
fluid sweep & 70\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, liquid-start, liquid-end, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} outer-0..100, inner-0..100, liquid-0..100, start-0..100, end-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every liquid ring.\par
outer and inner run counterclockwise from the rightmost point. liquid follows the filled sector centreline from liquid-start to liquid-end; start and end run radially from inner to outer boundary.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsliquidringnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,liquid-start,liquid-end,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsliquidringnode\endcsname{outer,inner,liquid,start,end}
\expandafter\def\csname tikzphysics@reference@lookup@liquid ring\endcsname{physicsliquidringnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsliquidringnode\endcsname{physicsliquidringnode}
\expandafter\def\csname tikzphysics@reference@body@physicsutubenode\endcsname{%
\textbf{u tube (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fluid width & 2cm\\
fluid height & 4cm\\
fluid tube width & .3cm\\
fluid left level & .75\\
fluid right level & .55\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, left-surface, right-surface, surface, text, base, base east, base west, mid, mid east, mid west\par
\textbf{Families:} surface-0..100, left-surface-0..100, right-surface-0..100, outer-0..100, inner-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every u tube.\par
left-surface and right-surface independently run left to right across the liquid in each arm. surface selects the left arm, never the empty gap. outer and inner follow the U outline by distance from the left lip down through the bend to the right lip.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsutubenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,left-surface,right-surface,surface,text,base,base east,base west,mid,mid east,mid west}
\expandafter\def\csname tikzphysics@reference@families@physicsutubenode\endcsname{surface,left-surface,right-surface,outer,inner}
\expandafter\def\csname tikzphysics@reference@lookup@u tube\endcsname{physicsutubenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsutubenode\endcsname{physicsutubenode}
\expandafter\def\csname tikzphysics@reference@body@physicspistoncylindernode\endcsname{%
\textbf{piston cylinder (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
piston cylinder width & 1.8cm\\
piston cylinder height & 3cm\\
piston position & .65\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, piston, rod-end, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, piston-0..100, axis-0..100, wall-left-0..100, wall-right-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every piston cylinder.\par
Piston family is the lower gas-contact face, left to right; position is measured from the bottom. Cylinder top is open.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspistoncylindernode\endcsname{center,north,south,east,west,north east,north west,south east,south west,piston,rod-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicspistoncylindernode\endcsname{bottom,right,top,left,piston,axis,wall-left,wall-right}
\expandafter\def\csname tikzphysics@reference@lookup@piston cylinder\endcsname{physicspistoncylindernode}
\expandafter\def\csname tikzphysics@reference@lookup@physicspistoncylindernode\endcsname{physicspistoncylindernode}
\expandafter\def\csname tikzphysics@reference@body@physicscapillarytubenode\endcsname{%
\textbf{capillary tube (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
capillary width & .5cm\\
capillary height & 3cm\\
capillary level & .6\\
capillary sag & .12cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, surface, text\par
\textbf{Families:} surface-0..100, wall-left-0..100, wall-right-0..100, axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every capillary tube.\par
surface runs left to right by horizontal position. Positive sag gives a concave meniscus; negative sag a convex meniscus. Heights are illustrative, not computed from surface tension.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscapillarytubenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,surface,text}
\expandafter\def\csname tikzphysics@reference@families@physicscapillarytubenode\endcsname{surface,wall-left,wall-right,axis}
\expandafter\def\csname tikzphysics@reference@lookup@capillary tube\endcsname{physicscapillarytubenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscapillarytubenode\endcsname{physicscapillarytubenode}
\expandafter\def\csname tikzphysics@reference@body@physicsnozzlenode\endcsname{%
\textbf{nozzle (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
nozzle length & 4cm\\
nozzle diameter & 1.4cm\\
nozzle throat diameter & .55cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, inlet, outlet, throat, text\par
\textbf{Families:} axis-0..100, top-0..100, bottom-0..100, inlet-0..100, outlet-0..100, throat-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every nozzle.\par
Wall families run inlet to outlet by axial position. Cross-sections run bottom to top. Cosine profiles join smoothly; flow is not solved.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsnozzlenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,inlet,outlet,throat,text}
\expandafter\def\csname tikzphysics@reference@families@physicsnozzlenode\endcsname{axis,top,bottom,inlet,outlet,throat}
\expandafter\def\csname tikzphysics@reference@lookup@nozzle\endcsname{physicsnozzlenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsnozzlenode\endcsname{physicsnozzlenode}
\expandafter\def\csname tikzphysics@reference@body@physicsventurinode\endcsname{%
\textbf{venturi (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
venturi length & 4cm\\
venturi diameter & 1.4cm\\
venturi throat diameter & .55cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, inlet, outlet, throat, text\par
\textbf{Families:} axis-0..100, top-0..100, bottom-0..100, inlet-0..100, outlet-0..100, throat-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every venturi.\par
Wall families run inlet to outlet by axial position. Cross-sections run bottom to top. Cosine profiles join smoothly; flow is not solved.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsventurinode\endcsname{center,north,south,east,west,north east,north west,south east,south west,inlet,outlet,throat,text}
\expandafter\def\csname tikzphysics@reference@families@physicsventurinode\endcsname{axis,top,bottom,inlet,outlet,throat}
\expandafter\def\csname tikzphysics@reference@lookup@venturi\endcsname{physicsventurinode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsventurinode\endcsname{physicsventurinode}
\expandafter\def\csname tikzphysics@reference@body@physicslayeredtanknode\endcsname{%
\textbf{layered tank (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
layered tank width & 3cm\\
layered tank height & 2.5cm\\
layered tank interface & .35\\
layered tank level & .75\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, lower-center, upper-center, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, interface-0..100, surface-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every layered tank.\par
Two liquid layers; interface and surface run left to right. Separate centre anchors support density labels without color.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicslayeredtanknode\endcsname{center,north,south,east,west,north east,north west,south east,south west,lower-center,upper-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicslayeredtanknode\endcsname{bottom,right,top,left,interface,surface}
\expandafter\def\csname tikzphysics@reference@lookup@layered tank\endcsname{physicslayeredtanknode}
\expandafter\def\csname tikzphysics@reference@lookup@physicslayeredtanknode\endcsname{physicslayeredtanknode}
\expandafter\def\csname tikzphysics@reference@body@physicsconcavemirror\endcsname{%
\textbf{concave-mirror (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
mirror radius & 5cm\\
mirror thickness & 0.25cm\\
mirror aperture angle & 30 degrees\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, vertex, arc-mid, surface-mid, front-mid, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, top, bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every concave-mirror.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconcavemirror\endcsname{center,north,south,east,west,north east,north west,south east,south west,vertex,arc-mid,surface-mid,front-mid,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,top,bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconcavemirror\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@concave-mirror\endcsname{physicsconcavemirror}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconcavemirror\endcsname{physicsconcavemirror}
\expandafter\def\csname tikzphysics@reference@body@physicsconvexmirror\endcsname{%
\textbf{convex-mirror (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
mirror radius & 5cm\\
mirror thickness & 0.25cm\\
mirror aperture angle & 30 degrees\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, vertex, arc-mid, surface-mid, front-mid, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, top, bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every convex-mirror.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconvexmirror\endcsname{center,north,south,east,west,north east,north west,south east,south west,vertex,arc-mid,surface-mid,front-mid,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,top,bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconvexmirror\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@convex-mirror\endcsname{physicsconvexmirror}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconvexmirror\endcsname{physicsconvexmirror}
\expandafter\def\csname tikzphysics@reference@body@physicsconvexlens\endcsname{%
\textbf{convex-lens (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
convex lens radius & 5cm\\
convex lens thickness & 0.2cm\\
convex lens aperture angle & 25 degrees\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, front-mid, back-mid, front-top, front-bottom, back-top, back-bottom, top, bottom, text\par
\textbf{Families:} front-0..100, back-0..100, surface-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every convex-lens.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconvexlens\endcsname{center,north,south,east,west,north east,north west,south east,south west,front-mid,back-mid,front-top,front-bottom,back-top,back-bottom,top,bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconvexlens\endcsname{front,back,surface,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@convex-lens\endcsname{physicsconvexlens}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconvexlens\endcsname{physicsconvexlens}
\expandafter\def\csname tikzphysics@reference@body@physicsconcavelens\endcsname{%
\textbf{concave-lens (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
concave lens radius & 5cm\\
concave lens thickness & 0.2cm\\
concave lens aperture angle & 25 degrees\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, front-mid, back-mid, front-top, front-bottom, back-top, back-bottom, top, bottom, text\par
\textbf{Families:} front-0..100, back-0..100, surface-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every concave-lens.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconcavelens\endcsname{center,north,south,east,west,north east,north west,south east,south west,front-mid,back-mid,front-top,front-bottom,back-top,back-bottom,top,bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconcavelens\endcsname{front,back,surface,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@concave-lens\endcsname{physicsconcavelens}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconcavelens\endcsname{physicsconcavelens}
\expandafter\def\csname tikzphysics@reference@body@physicsslab\endcsname{%
\textbf{slab (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 1.2cm\\
minimum height & 3cm\\
\end{tabular}\par
\textbf{Size aliases:} slab width = minimum width; slab height = minimum height.\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, front, back, front-top, front-bottom, back-top, back-bottom, top, bottom, text\par
\textbf{Families:} front-0..100, back-0..100, top-0..100, bottom-0..100, surface-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every slab.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsslab\endcsname{center,north,south,east,west,north east,north west,south east,south west,front,back,front-top,front-bottom,back-top,back-bottom,top,bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsslab\endcsname{front,back,top,bottom,surface}
\expandafter\def\csname tikzphysics@reference@lookup@slab\endcsname{physicsslab}
\expandafter\def\csname tikzphysics@reference@lookup@physicsslab\endcsname{physicsslab}
\expandafter\def\csname tikzphysics@reference@body@physicsprism\endcsname{%
\textbf{prism (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
minimum width & 3cm\\
minimum height & 2.6cm\\
prism apex angle & derived\\
\end{tabular}\par
\textbf{Size aliases:} prism width = minimum width; prism height = minimum height.\par
\textbf{Anchors:} center, centroid, north, south, east, west, north east, north west, south east, south west, apex, base-left, base-right, base-mid, left-mid, right-mid, entry-mid, exit-mid, text\par
\textbf{Families:} base-0..100, right-0..100, left-0..100, surface-0..100, entry-0..100, exit-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every prism.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsprism\endcsname{center,centroid,north,south,east,west,north east,north west,south east,south west,apex,base-left,base-right,base-mid,left-mid,right-mid,entry-mid,exit-mid,text}
\expandafter\def\csname tikzphysics@reference@families@physicsprism\endcsname{base,right,left,surface,entry,exit}
\expandafter\def\csname tikzphysics@reference@lookup@prism\endcsname{physicsprism}
\expandafter\def\csname tikzphysics@reference@lookup@physicsprism\endcsname{physicsprism}
\expandafter\def\csname tikzphysics@reference@body@physicsplanemirror\endcsname{%
\textbf{plane-mirror (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
mirror height & 3cm\\
mirror thickness & 0.25cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top, bottom, front-mid, surface-mid, vertex, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every plane-mirror.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsplanemirror\endcsname{center,north,south,east,west,north east,north west,south east,south west,top,bottom,front-mid,surface-mid,vertex,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsplanemirror\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@plane-mirror\endcsname{physicsplanemirror}
\expandafter\def\csname tikzphysics@reference@lookup@physicsplanemirror\endcsname{physicsplanemirror}
\expandafter\def\csname tikzphysics@reference@body@physicsplanoconvexlens\endcsname{%
\textbf{plano-convex-lens (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
lens height & 3cm\\
lens thickness & 0.2cm\\
lens front radius & 5cm\\
lens back radius & 5cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top, bottom, front-mid, surface-mid, vertex, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every plano-convex-lens.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsplanoconvexlens\endcsname{center,north,south,east,west,north east,north west,south east,south west,top,bottom,front-mid,surface-mid,vertex,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsplanoconvexlens\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@plano-convex-lens\endcsname{physicsplanoconvexlens}
\expandafter\def\csname tikzphysics@reference@lookup@physicsplanoconvexlens\endcsname{physicsplanoconvexlens}
\expandafter\def\csname tikzphysics@reference@body@physicsplanoconcavelens\endcsname{%
\textbf{plano-concave-lens (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
lens height & 3cm\\
lens thickness & 0.2cm\\
lens front radius & 5cm\\
lens back radius & 5cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top, bottom, front-mid, surface-mid, vertex, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every plano-concave-lens.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsplanoconcavelens\endcsname{center,north,south,east,west,north east,north west,south east,south west,top,bottom,front-mid,surface-mid,vertex,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsplanoconcavelens\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@plano-concave-lens\endcsname{physicsplanoconcavelens}
\expandafter\def\csname tikzphysics@reference@lookup@physicsplanoconcavelens\endcsname{physicsplanoconcavelens}
\expandafter\def\csname tikzphysics@reference@body@physicspositivemeniscuslens\endcsname{%
\textbf{positive-meniscus-lens (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
lens height & 3cm\\
lens thickness & 0.2cm\\
lens front radius & 4cm\\
lens back radius & 6cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top, bottom, front-mid, surface-mid, vertex, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every positive-meniscus-lens.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspositivemeniscuslens\endcsname{center,north,south,east,west,north east,north west,south east,south west,top,bottom,front-mid,surface-mid,vertex,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicspositivemeniscuslens\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@positive-meniscus-lens\endcsname{physicspositivemeniscuslens}
\expandafter\def\csname tikzphysics@reference@lookup@physicspositivemeniscuslens\endcsname{physicspositivemeniscuslens}
\expandafter\def\csname tikzphysics@reference@body@physicsnegativemeniscuslens\endcsname{%
\textbf{negative-meniscus-lens (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
lens height & 3cm\\
lens thickness & 0.2cm\\
lens front radius & 6cm\\
lens back radius & 4cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, top, bottom, front-mid, surface-mid, vertex, back-mid, front-top, front-bottom, surface-top, surface-bottom, back-top, back-bottom, text\par
\textbf{Families:} surface-0..100, front-0..100, back-0..100, top-0..100, bottom-0..100; legacy .0..100 shorthand also available\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every negative-meniscus-lens.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsnegativemeniscuslens\endcsname{center,north,south,east,west,north east,north west,south east,south west,top,bottom,front-mid,surface-mid,vertex,back-mid,front-top,front-bottom,surface-top,surface-bottom,back-top,back-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsnegativemeniscuslens\endcsname{surface,front,back,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@negative-meniscus-lens\endcsname{physicsnegativemeniscuslens}
\expandafter\def\csname tikzphysics@reference@lookup@physicsnegativemeniscuslens\endcsname{physicsnegativemeniscuslens}
\expandafter\def\csname tikzphysics@reference@body@physicstransversewavenode\endcsname{%
\textbf{transverse wave (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
wave length & 4cm\\
wave amplitude & .4cm\\
wave cycles & 2\\
wave phase & 0\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} axis-0..100, curve-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every transverse wave.\par
Axis runs left to right; curve is a snapshot, not a time simulation.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicstransversewavenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicstransversewavenode\endcsname{axis,curve}
\expandafter\def\csname tikzphysics@reference@lookup@transverse wave\endcsname{physicstransversewavenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicstransversewavenode\endcsname{physicstransversewavenode}
\expandafter\def\csname tikzphysics@reference@body@physicsstandingwavenode\endcsname{%
\textbf{standing wave (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
wave length & 4cm\\
wave amplitude & .4cm\\
standing wave lobes & 3\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} axis-0..100, curve-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every standing wave.\par
Axis runs left to right; curve is a snapshot, not a time simulation. Fixed endpoints. lobes controls half-wavelengths; node-N indexes 0..lobes and antinode-N indexes 0..lobes-1 on the axis.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsstandingwavenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsstandingwavenode\endcsname{axis,curve}
\expandafter\def\csname tikzphysics@reference@lookup@standing wave\endcsname{physicsstandingwavenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsstandingwavenode\endcsname{physicsstandingwavenode}
\expandafter\def\csname tikzphysics@reference@body@physicslongitudinalwavenode\endcsname{%
\textbf{longitudinal wave (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
wave length & 4cm\\
wave amplitude & .4cm\\
wave cycles & 2\\
wave coils & 16\\
wave compression & .65\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} axis-0..100, curve-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every longitudinal wave.\par
Axis runs left to right; curve is a snapshot, not a time simulation. curve follows a schematic variable-spacing spring; compression below 1 prevents reversal of the longitudinal coordinate.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicslongitudinalwavenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicslongitudinalwavenode\endcsname{axis,curve}
\expandafter\def\csname tikzphysics@reference@lookup@longitudinal wave\endcsname{physicslongitudinalwavenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicslongitudinalwavenode\endcsname{physicslongitudinalwavenode}
\expandafter\def\csname tikzphysics@reference@body@physicsopenpipenode\endcsname{%
\textbf{open pipe (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pipe length & 4cm\\
pipe width & .8cm\\
pipe mode & 1\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} axis-0..100, curve-0..100, top-0..100, bottom-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every open pipe.\par
Displacement pattern: open ends are antinodes, the closed left end is a node. mode selects harmonics; closed-pipe harmonics are odd. node-N and antinode-N are zero-based ordinal locations on the axis, not percentages.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsopenpipenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsopenpipenode\endcsname{axis,curve,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@open pipe\endcsname{physicsopenpipenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsopenpipenode\endcsname{physicsopenpipenode}
\expandafter\def\csname tikzphysics@reference@body@physicsclosedpipenode\endcsname{%
\textbf{closed pipe (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pipe length & 4cm\\
pipe width & .8cm\\
pipe mode & 1\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, text\par
\textbf{Families:} axis-0..100, curve-0..100, top-0..100, bottom-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every closed pipe.\par
Displacement pattern: open ends are antinodes, the closed left end is a node. mode selects harmonics; closed-pipe harmonics are odd. node-N and antinode-N are zero-based ordinal locations on the axis, not percentages.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsclosedpipenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsclosedpipenode\endcsname{axis,curve,top,bottom}
\expandafter\def\csname tikzphysics@reference@lookup@closed pipe\endcsname{physicsclosedpipenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsclosedpipenode\endcsname{physicsclosedpipenode}
\expandafter\def\csname tikzphysics@reference@body@physicsthermalreservoirnode\endcsname{%
\textbf{thermal reservoir (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
reservoir width & 3cm\\
reservoir height & .8cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, heat-left, heat-right, heat-top, heat-bottom, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every thermal reservoir.\par
Physical boundaries run counterclockwise from bottom-left. Heat ports lie at face midpoints. Geometry is schematic; text and temperatures are supplied by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsthermalreservoirnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,heat-left,heat-right,heat-top,heat-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsthermalreservoirnode\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@thermal reservoir\endcsname{physicsthermalreservoirnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsthermalreservoirnode\endcsname{physicsthermalreservoirnode}
\expandafter\def\csname tikzphysics@reference@lookup@hot reservoir\endcsname{physicsthermalreservoirnode}
\expandafter\def\csname tikzphysics@reference@lookup@cold reservoir\endcsname{physicsthermalreservoirnode}
\expandafter\def\csname tikzphysics@reference@body@physicsgaschambernode\endcsname{%
\textbf{gas chamber (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
chamber width & 2.4cm\\
chamber height & 1.8cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, heat-left, heat-right, heat-top, heat-bottom, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every gas chamber.\par
Physical boundaries run counterclockwise from bottom-left. Heat ports lie at face midpoints. Geometry is schematic; text and temperatures are supplied by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsgaschambernode\endcsname{center,north,south,east,west,north east,north west,south east,south west,heat-left,heat-right,heat-top,heat-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsgaschambernode\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@gas chamber\endcsname{physicsgaschambernode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsgaschambernode\endcsname{physicsgaschambernode}
\expandafter\def\csname tikzphysics@reference@body@physicsthermalwallnode\endcsname{%
\textbf{thermal wall (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermal wall width & .3cm\\
thermal wall height & 2cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, heat-left, heat-right, heat-top, heat-bottom, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every thermal wall.\par
Physical boundaries run counterclockwise from bottom-left. Heat ports lie at face midpoints. Geometry is schematic; text and temperatures are supplied by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsthermalwallnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,heat-left,heat-right,heat-top,heat-bottom,text}
\expandafter\def\csname tikzphysics@reference@families@physicsthermalwallnode\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@thermal wall\endcsname{physicsthermalwallnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsthermalwallnode\endcsname{physicsthermalwallnode}
\expandafter\def\csname tikzphysics@reference@lookup@conducting wall\endcsname{physicsthermalwallnode}
\expandafter\def\csname tikzphysics@reference@lookup@insulated wall\endcsname{physicsthermalwallnode}
\expandafter\def\csname tikzphysics@reference@body@physicsheatenginenode\endcsname{%
\textbf{heat engine (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermal device size & 1.2cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, hot, cold, work, heat-in, heat-out, text\par
\textbf{Families:} rim-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every heat engine.\par
hot is the upper port, cold the lower port, work the right port. heat-in and heat-out follow the device role. Arrow directions are supplied by the named diagram pic or by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsheatenginenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,hot,cold,work,heat-in,heat-out,text}
\expandafter\def\csname tikzphysics@reference@families@physicsheatenginenode\endcsname{rim}
\expandafter\def\csname tikzphysics@reference@lookup@heat engine\endcsname{physicsheatenginenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsheatenginenode\endcsname{physicsheatenginenode}
\expandafter\def\csname tikzphysics@reference@body@physicsrefrigeratornode\endcsname{%
\textbf{refrigerator (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermal device size & 1.2cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, hot, cold, work, heat-in, heat-out, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every refrigerator.\par
hot is the upper port, cold the lower port, work the right port. heat-in and heat-out follow the device role. Arrow directions are supplied by the named diagram pic or by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrefrigeratornode\endcsname{center,north,south,east,west,north east,north west,south east,south west,hot,cold,work,heat-in,heat-out,text}
\expandafter\def\csname tikzphysics@reference@families@physicsrefrigeratornode\endcsname{bottom,right,top,left}
\expandafter\def\csname tikzphysics@reference@lookup@refrigerator\endcsname{physicsrefrigeratornode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrefrigeratornode\endcsname{physicsrefrigeratornode}
\expandafter\def\csname tikzphysics@reference@lookup@heat pump\endcsname{physicsrefrigeratornode}
\expandafter\def\csname tikzphysics@reference@body@physicsisothermalprocessnode\endcsname{%
\textbf{isothermal process (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv start volume & 1\\
pv start pressure & 3\\
pv end volume & 3\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, start-volume, end-volume, start-pressure, end-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} process-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every isothermal process.\par
process advances linearly in volume from the start to end state; compression is supported. PV values are unitless numbers in consistent author-chosen units. Axis maxima must contain both endpoints. No heat or work integral is computed.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsisothermalprocessnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,start-volume,end-volume,start-pressure,end-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsisothermalprocessnode\endcsname{process,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@isothermal process\endcsname{physicsisothermalprocessnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsisothermalprocessnode\endcsname{physicsisothermalprocessnode}
\expandafter\def\csname tikzphysics@reference@body@physicsisobaricprocessnode\endcsname{%
\textbf{isobaric process (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv start volume & 1\\
pv start pressure & 3\\
pv end volume & 3\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, start-volume, end-volume, start-pressure, end-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} process-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every isobaric process.\par
process advances linearly in volume from the start to end state; compression is supported. PV values are unitless numbers in consistent author-chosen units. Axis maxima must contain both endpoints. No heat or work integral is computed.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsisobaricprocessnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,start-volume,end-volume,start-pressure,end-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsisobaricprocessnode\endcsname{process,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@isobaric process\endcsname{physicsisobaricprocessnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsisobaricprocessnode\endcsname{physicsisobaricprocessnode}
\expandafter\def\csname tikzphysics@reference@body@physicsisochoricprocessnode\endcsname{%
\textbf{isochoric process (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv start volume & 1\\
pv start pressure & 3\\
pv end pressure & 1.5\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, start-volume, end-volume, start-pressure, end-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} process-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every isochoric process.\par
process advances linearly in pressure at fixed volume. PV values are unitless numbers in consistent author-chosen units. Axis maxima must contain both endpoints. No heat or work integral is computed.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsisochoricprocessnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,start-volume,end-volume,start-pressure,end-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsisochoricprocessnode\endcsname{process,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@isochoric process\endcsname{physicsisochoricprocessnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsisochoricprocessnode\endcsname{physicsisochoricprocessnode}
\expandafter\def\csname tikzphysics@reference@body@physicsadiabaticprocessnode\endcsname{%
\textbf{adiabatic process (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv start volume & 1\\
pv start pressure & 3\\
pv end volume & 3\\
pv gamma & 1.4\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, start-volume, end-volume, start-pressure, end-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} process-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every adiabatic process.\par
process advances linearly in volume from the start to end state; compression is supported. PV values are unitless numbers in consistent author-chosen units. Axis maxima must contain both endpoints. No heat or work integral is computed. This is the reversible ideal-gas relation pressure times volume to the gamma power is constant with gamma > 1.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsadiabaticprocessnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,start-volume,end-volume,start-pressure,end-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsadiabaticprocessnode\endcsname{process,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@adiabatic process\endcsname{physicsadiabaticprocessnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsadiabaticprocessnode\endcsname{physicsadiabaticprocessnode}
\expandafter\def\csname tikzphysics@reference@body@physicspolytropicprocessnode\endcsname{%
\textbf{polytropic process (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv start volume & 1\\
pv start pressure & 3\\
pv end volume & 3\\
pv exponent & 1.2\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, start, end, start-volume, end-volume, start-pressure, end-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} process-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every polytropic process.\par
process advances linearly in volume from the start to end state; compression is supported. PV values are unitless numbers in consistent author-chosen units. Axis maxima must contain both endpoints. No heat or work integral is computed.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspolytropicprocessnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,start,end,start-volume,end-volume,start-pressure,end-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicspolytropicprocessnode\endcsname{process,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@polytropic process\endcsname{physicspolytropicprocessnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicspolytropicprocessnode\endcsname{physicspolytropicprocessnode}
\expandafter\def\csname tikzphysics@reference@body@physicsrectangularcyclenode\endcsname{%
\textbf{rectangular cycle (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv low volume & 1\\
pv high volume & 3\\
pv low pressure & 1\\
pv high pressure & 3\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, state-A, state-B, state-C, state-D, state-A-volume, state-A-pressure, state-B-volume, state-B-pressure, state-C-volume, state-C-pressure, state-D-volume, state-D-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} AB-0..100, BC-0..100, CD-0..100, DA-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every rectangular cycle.\par
Clockwise A-B-C-D cycle. Branch percentages are linear in the changing coordinate. A is low-volume low-pressure; B high-pressure; C high-volume high-pressure; D low-pressure.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrectangularcyclenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,state-A,state-B,state-C,state-D,state-A-volume,state-A-pressure,state-B-volume,state-B-pressure,state-C-volume,state-C-pressure,state-D-volume,state-D-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsrectangularcyclenode\endcsname{AB,BC,CD,DA,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@rectangular cycle\endcsname{physicsrectangularcyclenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrectangularcyclenode\endcsname{physicsrectangularcyclenode}
\expandafter\def\csname tikzphysics@reference@body@physicscarnotcyclenode\endcsname{%
\textbf{carnot cycle (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv start volume & 1\\
carnot hot constant & 3\\
carnot temperature ratio & .75\\
carnot expansion ratio & 1.5\\
pv gamma & 1.4\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, state-A, state-B, state-C, state-D, state-A-volume, state-A-pressure, state-B-volume, state-B-pressure, state-C-volume, state-C-pressure, state-D-volume, state-D-pressure, origin, volume-end, pressure-end, text\par
\textbf{Families:} hot-0..100, expansion-0..100, cold-0..100, compression-0..100, volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every carnot cycle.\par
Reversible ideal-gas Carnot cycle: hot A-B isotherm, B-C adiabatic expansion, cold C-D isotherm, D-A adiabatic compression. Cold/hot is an absolute-temperature ratio; hot constant is P\_A V\_A. Branch percentages interpolate volume, not arc length. States are derived to close exactly.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscarnotcyclenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,state-A,state-B,state-C,state-D,state-A-volume,state-A-pressure,state-B-volume,state-B-pressure,state-C-volume,state-C-pressure,state-D-volume,state-D-pressure,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicscarnotcyclenode\endcsname{hot,expansion,cold,compression,volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@carnot cycle\endcsname{physicscarnotcyclenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscarnotcyclenode\endcsname{physicscarnotcyclenode}
\expandafter\def\csname tikzphysics@reference@body@physicspvdiagramnode\endcsname{%
\textbf{pv diagram (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
pv width & 4cm\\
pv height & 3cm\\
pv max volume & 4\\
pv max pressure & 4\\
pv show axes & true\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, origin, volume-end, pressure-end, text\par
\textbf{Families:} volume-axis-0..100, pressure-axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every pv diagram.\par
Empty PV axes frame. Overlay process nodes at the same center with matching axis keys and pv show axes=false; the axes and projection anchors remain available.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicspvdiagramnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,origin,volume-end,pressure-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicspvdiagramnode\endcsname{volume-axis,pressure-axis}
\expandafter\def\csname tikzphysics@reference@lookup@pv diagram\endcsname{physicspvdiagramnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicspvdiagramnode\endcsname{physicspvdiagramnode}
\expandafter\def\csname tikzphysics@reference@body@physicsheatenginediagram\endcsname{%
\textbf{heat engine diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermo diagram separation & 2cm\\
thermo diagram work length & 1.5cm\\
reservoir width & 3cm\\
reservoir height & .8cm\\
thermal device size & 1.2cm\\
\end{tabular}\par
\textbf{Anchors:} origin, hot (node), cold (node), device (node), work\par
\textbf{Families:} heat-hot-0..100, heat-cold-0..100, work-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every heat engine diagram.\par
Heat enters from the hot reservoir, part leaves as work, and the remainder reaches the cold reservoir. Named child nodes use the pic prefix. Flow coordinate families heat-hot, heat-cold and work run from arrow tail to head; use the pic prefix and integer percentages.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsheatenginediagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsheatenginediagram\endcsname{heat-hot,heat-cold,work}
\expandafter\def\csname tikzphysics@reference@lookup@heat engine diagram\endcsname{physicsheatenginediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicsheatenginediagram\endcsname{physicsheatenginediagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics heat engine diagram\endcsname{physicsheatenginediagram}
\expandafter\def\csname tikzphysics@reference@body@physicsrefrigeratordiagram\endcsname{%
\textbf{refrigerator diagram (pic)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermo diagram separation & 2cm\\
thermo diagram work length & 1.5cm\\
reservoir width & 3cm\\
reservoir height & .8cm\\
thermal device size & 1.2cm\\
\end{tabular}\par
\textbf{Anchors:} origin, hot (node), cold (node), device (node), work\par
\textbf{Families:} heat-hot-0..100, heat-cold-0..100, work-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale.\par
\textbf{Defaults hook:} every refrigerator diagram.\par
Work enters the device, heat is absorbed from the cold reservoir, and heat is rejected to the hot reservoir. Labels are magnitudes supplied by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsrefrigeratordiagram\endcsname{}
\expandafter\def\csname tikzphysics@reference@families@physicsrefrigeratordiagram\endcsname{heat-hot,heat-cold,work}
\expandafter\def\csname tikzphysics@reference@lookup@refrigerator diagram\endcsname{physicsrefrigeratordiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physicsrefrigeratordiagram\endcsname{physicsrefrigeratordiagram}
\expandafter\def\csname tikzphysics@reference@lookup@heat pump diagram\endcsname{physicsrefrigeratordiagram}
\expandafter\def\csname tikzphysics@reference@lookup@physics refrigerator diagram\endcsname{physicsrefrigeratordiagram}
\expandafter\def\csname tikzphysics@reference@body@physicsconductionslabnode\endcsname{%
\textbf{conduction slab (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
conduction width & 3cm\\
conduction height & 2cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, heat-left, heat-right, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, axis-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every conduction slab.\par
Boundary families run counterclockwise; axis runs left to right. Heat flux and temperatures are author annotations; no conductivity law is solved.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconductionslabnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,heat-left,heat-right,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconductionslabnode\endcsname{bottom,right,top,left,axis}
\expandafter\def\csname tikzphysics@reference@lookup@conduction slab\endcsname{physicsconductionslabnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconductionslabnode\endcsname{physicsconductionslabnode}
\expandafter\def\csname tikzphysics@reference@body@physicscompositewallnode\endcsname{%
\textbf{composite wall (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
composite width & 3cm\\
composite height & 2cm\\
composite split & .45\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, heat-left, heat-right, layer-1-center, layer-2-center, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, axis-0..100, interface-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every composite wall.\par
Boundary families run counterclockwise; axis runs left to right. Heat flux and temperatures are author annotations; no conductivity law is solved.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscompositewallnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,heat-left,heat-right,layer-1-center,layer-2-center,text}
\expandafter\def\csname tikzphysics@reference@families@physicscompositewallnode\endcsname{bottom,right,top,left,axis,interface}
\expandafter\def\csname tikzphysics@reference@lookup@composite wall\endcsname{physicscompositewallnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscompositewallnode\endcsname{physicscompositewallnode}
\expandafter\def\csname tikzphysics@reference@body@physicsconvectionsurfacenode\endcsname{%
\textbf{convection surface (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermal plate width & 3.6cm\\
thermal plate thickness & .25cm\\
thermal fluid height & 1.2cm\\
thermal flow direction & 1\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, plate-center, fluid-center, heat-start, heat-end, text\par
\textbf{Families:} surface-0..100, bottom-0..100, right-0..100, left-0..100, flow-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every convection surface.\par
surface runs left to right on the plate-fluid interface. flow follows the central schematic heat-transfer arrow, outward for +1 and inward for -1. Arrow lengths do not encode h or heat flux.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsconvectionsurfacenode\endcsname{center,north,south,east,west,north east,north west,south east,south west,plate-center,fluid-center,heat-start,heat-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsconvectionsurfacenode\endcsname{surface,bottom,right,left,flow}
\expandafter\def\csname tikzphysics@reference@lookup@convection surface\endcsname{physicsconvectionsurfacenode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsconvectionsurfacenode\endcsname{physicsconvectionsurfacenode}
\expandafter\def\csname tikzphysics@reference@body@physicscoolingfinnode\endcsname{%
\textbf{cooling fin (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
fin length & 3cm\\
fin base height & 1cm\\
fin base thickness & .25cm\\
fin thickness & .18cm\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, root, tip, heat-left, text\par
\textbf{Families:} base-0..100, axis-0..100, fin-bottom-0..100, fin-tip-0..100, fin-top-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every cooling fin.\par
One extended fin attached to a base. axis runs root to tip; fin boundary follows bottom, tip and top counterclockwise. Fin length includes base thickness. Temperatures and distributed convection are author annotations.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscoolingfinnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,root,tip,heat-left,text}
\expandafter\def\csname tikzphysics@reference@families@physicscoolingfinnode\endcsname{base,axis,fin-bottom,fin-tip,fin-top}
\expandafter\def\csname tikzphysics@reference@lookup@cooling fin\endcsname{physicscoolingfinnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscoolingfinnode\endcsname{physicscoolingfinnode}
\expandafter\def\csname tikzphysics@reference@body@physicsradiatingbodynode\endcsname{%
\textbf{radiating body (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
radiation radius & .65cm\\
radiation ray length & .8cm\\
thermal flow direction & 1\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, heat-start, heat-end, text\par
\textbf{Families:} rim-0..100, ray-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every radiating body.\par
rim runs counterclockwise from the rightmost point. ray follows the rightward emission arrow or the inward absorption arrow. Rays are schematic and do not solve a Stefan-Boltzmann balance.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsradiatingbodynode\endcsname{center,north,south,east,west,north east,north west,south east,south west,heat-start,heat-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsradiatingbodynode\endcsname{rim,ray}
\expandafter\def\csname tikzphysics@reference@lookup@radiating body\endcsname{physicsradiatingbodynode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsradiatingbodynode\endcsname{physicsradiatingbodynode}
\expandafter\def\csname tikzphysics@reference@lookup@radiation source\endcsname{physicsradiatingbodynode}
\expandafter\def\csname tikzphysics@reference@body@physicsthermometernode\endcsname{%
\textbf{thermometer (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
thermometer height & 3.2cm\\
thermometer bulb radius & .32cm\\
thermometer stem width & .18cm\\
thermometer level & .6\\
thermal liquid color & black\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, bulb-center, liquid-top, scale-start, scale-end, text\par
\textbf{Families:} scale-0..100, column-0..100, bulb-0..100, stem-right-0..100, cap-0..100, stem-left-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every thermometer.\par
level is a geometric stem fraction, not a calibrated temperature. scale runs from bulb top toward stem cap; column runs from bulb centre to liquid-top. bulb follows the exposed outline counterclockwise from the left stem join through the bottom to the right stem join. Stem sides and cap expose the remaining boundary.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsthermometernode\endcsname{center,north,south,east,west,north east,north west,south east,south west,bulb-center,liquid-top,scale-start,scale-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsthermometernode\endcsname{scale,column,bulb,stem-right,cap,stem-left}
\expandafter\def\csname tikzphysics@reference@lookup@thermometer\endcsname{physicsthermometernode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsthermometernode\endcsname{physicsthermometernode}
\expandafter\def\csname tikzphysics@reference@body@physicscalorimeternode\endcsname{%
\textbf{calorimeter (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
calorimeter width & 3cm\\
calorimeter height & 2.6cm\\
calorimeter insulation & .25cm\\
calorimeter level & .55\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, liquid-center, headspace-center, liquid-left, liquid-right, text\par
\textbf{Families:} bottom-0..100, right-0..100, top-0..100, left-0..100, lid-0..100, surface-0..100, inner-bottom-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every calorimeter.\par
Double-wall calorimeter with schematic insulation spacing and a liquid surface. Boundary families run counterclockwise; lid and surface run left to right. No heat capacity or mixing temperature is computed.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicscalorimeternode\endcsname{center,north,south,east,west,north east,north west,south east,south west,liquid-center,headspace-center,liquid-left,liquid-right,text}
\expandafter\def\csname tikzphysics@reference@families@physicscalorimeternode\endcsname{bottom,right,top,left,lid,surface,inner-bottom}
\expandafter\def\csname tikzphysics@reference@lookup@calorimeter\endcsname{physicscalorimeternode}
\expandafter\def\csname tikzphysics@reference@lookup@physicscalorimeternode\endcsname{physicscalorimeternode}
\expandafter\def\csname tikzphysics@reference@body@physicsexpansionrodnode\endcsname{%
\textbf{expansion rod (node)}\par
\textbf{Keys: defaults}\par
\begin{tabular}{@{}ll@{}}
expansion rod length & 3cm\\
expansion rod thickness & .16cm\\
expansion separation & .65cm\\
thermal expansion ratio & 1.1\\
\end{tabular}\par
\textbf{Anchors:} center, north, south, east, west, north east, north west, south east, south west, original-start, original-end, expanded-start, expanded-end, text\par
\textbf{Families:} original-0..100, expanded-0..100\par
\textbf{Also:} draw, fill, line width, color, opacity, rotate, scale, anchor, minimum width, minimum height, inner sep, outer sep.\par
\textbf{Defaults hook:} every expansion rod.\par
Original rod is below; changed rod above. Both families run left to right along their axes with a shared left reference. Ratio sets changed/original length; values below one show contraction. Strain is supplied by the author.\par
\textit{Use the manual for geometry rules and collision-safe aliases.}
}
\expandafter\def\csname tikzphysics@reference@anchors@physicsexpansionrodnode\endcsname{center,north,south,east,west,north east,north west,south east,south west,original-start,original-end,expanded-start,expanded-end,text}
\expandafter\def\csname tikzphysics@reference@families@physicsexpansionrodnode\endcsname{original,expanded}
\expandafter\def\csname tikzphysics@reference@lookup@expansion rod\endcsname{physicsexpansionrodnode}
\expandafter\def\csname tikzphysics@reference@lookup@physicsexpansionrodnode\endcsname{physicsexpansionrodnode}
\expandafter\def\csname tikzphysics@reference@lookup@thermal expansion rod\endcsname{physicsexpansionrodnode}
\expandafter\def\csname tikzphysics@reference@lookup@index\endcsname{index}
\expandafter\def\csname tikzphysics@reference@body@index\endcsname{\textbf{Feature index}\par platform-left, platform-right, platform, wedge, ground, ceiling, wall-left, wall-right, ramp, curved-ramp, track, circular bowl, loop track, block, pulley, particle, disk, ring, spring, rope, force, velocity, acceleration, torque, rod, pin-support, roller-support, pendulum, beam, damper, compound pulley, physical pendulum, polar element, differential sector, differential ring, unwrapped ring, spherical shell, hollow sphere, rectangular element, rectangular strip, rectangular sheet, differential ring diagram, sphere shell diagram, sphere slice diagram, hollow sphere diagram, cylinder shell diagram, cylinder slice diagram, cone slice diagram, sheet element diagram, solid cylinder, solid cone, solid frustum, cylindrical shell, conical shell, hemisphere, u tube diagram, gas manometer, hydraulic press, fluid cylinder diagram, fluid tank diagram, pressure element diagram, rotating tube, rotating fluid diagram, buoyancy, flow tube diagram, meniscus diagram, capillary, surface tension ring, liquid ring diagram, fluid tank, meniscus, rotating fluid, fluid cylinder, pressure element, flow tube, liquid ring, u tube, piston cylinder, capillary tube, nozzle, venturi, layered tank, concave-mirror, convex-mirror, convex-lens, concave-lens, slab, prism, plane-mirror, plano-convex-lens, plano-concave-lens, positive-meniscus-lens, negative-meniscus-lens, transverse wave, standing wave, longitudinal wave, open pipe, closed pipe, thermal reservoir, gas chamber, thermal wall, heat engine, refrigerator, isothermal process, isobaric process, isochoric process, adiabatic process, polytropic process, rectangular cycle, carnot cycle, pv diagram, heat engine diagram, refrigerator diagram, conduction slab, composite wall, convection surface, cooling fin, radiating body, thermometer, calorimeter, expansion rod\par Use \textbackslash physicshelp\{name\} for a complete card.}
\def\tikzphysics@reference@features{platform-left,platform-right,platform,wedge,ground,ceiling,wall-left,wall-right,ramp,curved-ramp,track,circular bowl,loop track,block,pulley,particle,disk,ring,spring,rope,force,velocity,acceleration,torque,rod,pin-support,roller-support,pendulum,beam,damper,compound pulley,physical pendulum,polar element,differential sector,differential ring,unwrapped ring,spherical shell,hollow sphere,rectangular element,rectangular strip,rectangular sheet,differential ring diagram,sphere shell diagram,sphere slice diagram,hollow sphere diagram,cylinder shell diagram,cylinder slice diagram,cone slice diagram,sheet element diagram,solid cylinder,solid cone,solid frustum,cylindrical shell,conical shell,hemisphere,u tube diagram,gas manometer,hydraulic press,fluid cylinder diagram,fluid tank diagram,pressure element diagram,rotating tube,rotating fluid diagram,buoyancy,flow tube diagram,meniscus diagram,capillary,surface tension ring,liquid ring diagram,fluid tank,meniscus,rotating fluid,fluid cylinder,pressure element,flow tube,liquid ring,u tube,piston cylinder,capillary tube,nozzle,venturi,layered tank,concave-mirror,convex-mirror,convex-lens,concave-lens,slab,prism,plane-mirror,plano-convex-lens,plano-concave-lens,positive-meniscus-lens,negative-meniscus-lens,transverse wave,standing wave,longitudinal wave,open pipe,closed pipe,thermal reservoir,gas chamber,thermal wall,heat engine,refrigerator,isothermal process,isobaric process,isochoric process,adiabatic process,polytropic process,rectangular cycle,carnot cycle,pv diagram,heat engine diagram,refrigerator diagram,conduction slab,composite wall,convection surface,cooling fin,radiating body,thermometer,calorimeter,expansion rod}
\def\tikzphysics@reference@nodes{platform-left,platform-right,platform,wedge,ground,ceiling,wall-left,wall-right,ramp,curved-ramp,track,circular bowl,loop track,block,pulley,particle,disk,ring,spring,beam,damper,compound pulley,physical pendulum,polar element,differential sector,differential ring,unwrapped ring,spherical shell,hollow sphere,rectangular element,rectangular strip,rectangular sheet,solid cylinder,solid cone,solid frustum,cylindrical shell,conical shell,hemisphere,fluid tank,meniscus,rotating fluid,fluid cylinder,pressure element,flow tube,liquid ring,u tube,piston cylinder,capillary tube,nozzle,venturi,layered tank,concave-mirror,convex-mirror,convex-lens,concave-lens,slab,prism,plane-mirror,plano-convex-lens,plano-concave-lens,positive-meniscus-lens,negative-meniscus-lens,transverse wave,standing wave,longitudinal wave,open pipe,closed pipe,thermal reservoir,gas chamber,thermal wall,heat engine,refrigerator,isothermal process,isobaric process,isochoric process,adiabatic process,polytropic process,rectangular cycle,carnot cycle,pv diagram,conduction slab,composite wall,convection surface,cooling fin,radiating body,thermometer,calorimeter,expansion rod}
\makeatother
\endinput
