Irony is wasted on the stupid, Oscar Wilde

The complex plane is a two-dimensional coordinate system where:
In complex analysis, a curve (or path) is essentially a continuous parametric function tracing out a set of points in the complex plane. In other words, a curve $\gamma$ in the complex plane is a continuous, one-dimensional path trace by a function of a real parameter t.
Definition. A curve $\gamma$ in the complex plane is a continuous function $\gamma: [a, b] \to \mathbb{C}$ on a closed interval $[a,b]$. The parameter $t\in[a,b]$ represents a position on the curve, and as $t$ increases, $\gamma(t)$ moves along the path in a specific direction. The image of $\gamma$ is the set of points traced: $\gamma^* = {\gamma(t): a \le t \le b}$. If $\gamma^* \subseteq S$ for some region $S \subseteq \mathbb{C}$, we say $\gamma$ is contained in $S$ (i.e. the curve lies entirely in $S$). The starting or initial point of $\gamma$ is $\gamma(a)$ and the ending, terminal or final point is $\gamma(b)$.
Orientation: The direction in which t increases defines the curve’s orientation (e.g., clockwise vs. counterclockwise). Traversing from t = a to t = b follows the positive direction of the curve. Reversing the direction corresponds to traversing from b back to a.
Opposite Curve: Given a curve $\gamma: [a,b] \to \mathbb{C}$, the opposite or reversed curve $-\gamma$ is defined on the same interval $[a,b]$ by $(-\gamma)(t) = \gamma(a + b - t)$ for $t \in [a,b]$. This means $-\gamma$ traces the same set of points as $\gamma$ but in the opposite direction (starting where $\gamma$ ended, and ending where $\gamma$ began).
A straight line between two points $z_0$ and $z_1$ is parametrized as: $\gamma(t) = z_0 + t(z_1 - z_0), t \in [0, 1]$. Example: From $z_0 = 1 + 2i$ to $z_1 = 3 + 4i$: $\gamma(t) = 1 + 2i + t(2 + 2i) = (1 + 2t) + i(2 + 2t)$.
When a > b, the ellipse is stretched horizontally. The curve is traced counterclockwise as t increases from 0 to $2\pi.$
Parabola: $\gamma(t) = t + it^2, t \in [-2, 2]$. This traces a parabola in the complex plane (real part linear, imaginary part quadratic). If z = x + i y, then comparing real and imaginary parts: $x(t) = t, y(t) = t^2.$ From x(t) = t, we immediately get: t = x. Substitute into y(t) = t²: y = x². Cartesian equation. The curve satisfies $y = x^2, x \in [-2, 2].$ That’s the standard equation of a parabola opening upward, with: vertex at (0,0); axis of symmetry along the y-axis; domain restricted to [-2, 2] because t is in that range; Range: $y \in [0, 4]$. They trace the familiar U-shaped parabola in the (x, y) plane.
Spiral: $\gamma(t) = e^{kt} e^{i\theta t} =[\text{Using Euler’s formula}] e^{kt} (\cos \theta t + i \sin \theta t), k, \theta \in \mathbb{R}$. Real and imaginary parts. If z = x + i y, then: $x(t) = e^{kt}\cos(\theta t), y(t) = e^{kt} \sin(\theta t)$. Polar coordinates interpretation. In polar form $z = r e^{i\varphi}$: Radius: $r(t) = e^{kt}$. This grows (if k > 0) or shrinks (if k < 0) exponentially with t. Angle: $\varphi(t) = \theta t$. So the curve is a logarithmic spiral: the distance from the origin changes exponentially while the angle changes at a constant rate.
For k = 1, $\theta = 1, x(t) = e^{t} \cos(t), y(t) = e^{t} \sin(t)$. Radius: $r(t) = e^{t}$ — grows rapidly as t increases. Angle: $\varphi(t) = t$ — rotates (changes) at a constant speed. As $t \to \infty$, the spiral winds outward, getting farther from the origin each turn. As $t \to -\infty$, $r(t) \to 0$, causing the spiral to wind inward toward the origin.
Curvature measures how sharply a curve bends at a given point.. Formally, for a smooth curve in the plane or space, the curvature $\kappa$ at a point is defined as: $\kappa = \left\lVert \frac{d\mathbf{T}}{ds} \right\rVert$ where:
If a curve is given by a smooth vector function $\mathbf{r}(t) = \big(x(t), y(t)\big) \ \text{or in 3D: } (x(t), y(t), z(t))$ and $\mathbf{r}'(t) \neq \mathbf{0}$, then the unit tangent vector is: $\mathbf{T}(t) = \frac{\mathbf{r}'(t)}{\|\mathbf{r}'(t)\|}$
Imagine driving along the curve: curvature tells you how quickly you have to turn the steering wheel at that point. A straight line r(t) = a + tb, where b is a constant vector. The tangent vector $\mathbf{T}$ is constant (since r’(t) = b), therefore $\frac{\mathbf{dT}}{ds} = 0$, it has curvature 0 (no turning). A circle of radius R, r(t) = (Rcos(t), Rsin(t)) has constant curvature $\kappa = \frac{1}{R}$ — smaller circles bend more sharply, so they have higher curvature.
$\mathbf{T}(t)$ points along the curve in the direction of motion. It ignores how fast you’re moving — only the direction matters.
Definition. A curve $\gamma: [a, b] \to \mathbb{C}$ is closed if its starting point coincides with its endpoint, i.e., γ(a) = γ(b). In other words, a _closed curve forms a loop with no gap between its beginning and end (with no endpoints), e.g.,
Writing it in real–imaginary coordinates: $x(t) = \cos(t), y(t) = \cos(2t)$. At $t = \frac{\pi}{2} \text{ and } \frac{3\pi}{2}$: (0, -1), the path crosses itself.
Definition. A curve $\gamma: [a, b] \to \mathbb{C}$ is simple if γ(t₁) = γ(t₂) if it does not intersect itself (no self-crossings), except possibly at the endpoints when the curve is closed. Formally, if $\gamma(t_1) = \gamma(t_2) \Rightarrow \begin{cases} t_1 = t_2, & \text{for a non-closed (open) curve}, \\ \{t_1, t_2\} = \{a, b\}, & \text{for a closed curve}. \end{cases}$.
The only repetition allowed is $\gamma(a) = \gamma(b)$. In words, the image of $\gamma$ has no repeated points, except that a closed simple curve (also called a loop and a Jordan curve) may have its start and end points coincide.
Figure 3. Simple/not simple, closed/non-closed curves.
Examples:
Open Simple Curve: The line segment from 0 to 1 + i ( (0,0) to (1,1) ): $\gamma(t) = t(1+i), t \in [0, 1]$ is simple because it never intersects itself. It is open because the endpoints are distinct: γ(0) = 0 and γ(1) = 1+i. Length: $1+i = \sqrt{2}$. Curvature: Zero everywhere (straight line).
Closed Simple Curve: The unit circle parametrized by $\gamma(t) = e^{2\pi i t}, t \in [0, 1]$ is simple. Using Euler’s formula $e^{i\theta} = \cos(\theta) + i(\sin(\theta))$, we can write: $\gamma(t) = \cos(2\pi t) + i \sin(2\pi t)$, the curve is the unit circle in the complex plane, centered at the origin. At t = 0: $\gamma(0) = 1 + 0i$. At t = 1: $\gamma(1) = e^{2\pi i} = 1 + 0i$ the curve meets itself again. The curve’s orientation is counterclockwise as t increases from 0 to 1.
Example of Non-Simple Curve: $z(t) = e^{it}$ for t from 0 to 4π traces the unit circle twice, making it non-simple due to self-intersection at t = 2π.
Often we build complicated paths by joining simpler curve segments end-to-end. If one curve ends at the point where another begins, we can concatenate them.
Definition (Join of Two Curves). Let $\gamma_1 : [a, b] \to \mathbb{C}, \text{ and } \gamma_2 : [c, d] \to \mathbb{C}$ be two curves such that the endpoint of $\gamma_1$ matches the starting point of $\gamma_2$: $\gamma_1(b) = \gamma_2(c)$. The join (or concatenation) of $\gamma_1$ and $\gamma_2$ is the new curve $\gamma_1 * \gamma_2$ obtained by traversing $\gamma_1$ first and then $\gamma_2$. Formally, we can define $(\gamma_1 \ast \gamma_2) : [a,\, b + (d - c)] \to \mathbb{C}$ defined by $(\gamma_1+\gamma_2)(t) = \begin{cases} \gamma_1(t), & a \le t \le b, \\ \gamma_2\big(t - b + c\big), & b < t \le b + (d - c). \end{cases}$.
Here we have reparameterized the second curve $\gamma_2$ to immediately follow $\gamma_1$ in parameter time. The new curve $\gamma_1 * \gamma_2$ starts at $\gamma_1(a)$ and ends at $\gamma_2(d)$, passing through $\gamma_1(b)=\gamma_2(c)$ at the “joining” point.
This idea extends naturally to any finite sequence of curves: if $\gamma_2$ starts where $\gamma_1$ ends, $\gamma_3$ starts where $\gamma_2$ ends, and so on, then we can join them one after another.
Join of n Curves. Given a chain of curves $\gamma_1 : [a_1, b_1] \to \mathbb{C}, \gamma_2 : [a_2, b_2] \to \mathbb{C}, \dots, \gamma_n : [a_n, b_n] \to \mathbb{C}$ with $\gamma_{i-1}(b_{i-1}) = \gamma_i(a_i), \text{for } 2 \le i \le n,$ their concatenation $\gamma_1 * \gamma_2 * \cdots * \gamma_n$ is the curve obtained by concatenating them in order, reparametrizing each so that the next starts where the previous ends.
The overall path goes from 0 to 1 to 1 +i in $\mathbb{C}$.
$(\gamma_1 \ast \gamma_2)(t) = \begin{cases} e^{i\pi t}, & t\in[0,1],\\[4pt] -1 + (t-1), & t\in[1,3]. \end{cases}$.
$(\gamma_1 \ast \gamma_2 \ast \gamma_3)(t) = \begin{cases} t, & t\in[0,1],\\[4pt] 1+i(t-1), & t\in[1,2],\\[4pt] (3-t)+i(3-t), & t\in[2,3]. \end{cases}$.
Now consider another curve γ₂(t) = 1 - t + isin(2π(1 - t)), 0 ≤ t ≤ 1. This starts at γ₂(0) = 1 and ends at γ₂(1) = 0. For example, γ₂(0) = 1 + isin(0) = 1, γ₂(1/4) = 3/4 + isin(2π·3/4) = 3/4 + isin(3π/2) = 3/4 - i, γ₂(3/4) = 1/4 + i, γ₂(1) = 0. Both curves trace the same set of points in the complex plane: a real-axis segment from 0 to 1 with a sinusoidal oscillation in the imaginary part. However, the direction of traversal is opposite: γ₁ goes from 0 to 1, γ₂ goes from 1 to 0. γ₂ is exactly the opposite curve of γ₁ (Figures 1 and 2).
We can find an explicit reparameterization function $\phi: [0,1] \to [0,1]$ such that $\gamma_2(t) = \gamma_1(\phi(t))$. If we guess $\phi(t) = 1 - t$, then $\gamma_1(1 - t) = (1-t) + i\sin(2\pi(1-t))$, which is precisely $\gamma_2(t)$. Thus $\phi(t)=1-t$ reverses the path.
$(\gamma_1 \ast \gamma_2)(t) = \begin{cases} t+i\sin(2\pi t), & t\in[0,1],\\[6pt] 2-t+i\sin\big(2\pi(2-t)\big), & t\in[1,2]. \end{cases}$.
Note: $\gamma_2(t-1)=1-(t-1)+i\sin\!\big(2\pi(1-(t-1))\big)=2-t+i\sin\big(2\pi(2-t)\big)$

$(\gamma_1 \ast \gamma_2 \ast \gamma_3 \ast \gamma_4)(t) = \begin{cases} r(1 - t) + Rt, & 0 \le t \le 1, \\ Re^{i(t-1)}, & 1 \le t \le \pi + 1, \\ -R(\pi + 2 -t) -r(t - (\pi +1)), & \pi + 1 \le t \le \pi + 2, \\ -re^{i(t-(\pi+2))}, & \pi+2 \le t \le 2\pi + 2 \end{cases}$.

This concatenation forms a closed contour that encloses the annular region between the two concentric circles of radii r and R, with overall counterclockwise orientation (Figure 4).
Not all continuous curves are “nice” enough for calculus purposes; we often restrict to curves that are differentiable and without sudden changes in direction.
Definition. A curve $\gamma: [a, b] \to \mathbb{C}$ is smooth if it is continuously differentiable on $(a,b)$ and its derivative never vanishes on $[a,b]$.
What “Smooth” Really Mean (Figure 5):
Together, these conditions imply that the curve is regular and differentiable, with a smooth trajectory through the complex plane. It is one you could trace with a pen in a single motion, without lifting it or hitting a snag. It flows continuously and nicely through the plane, and at every point, you can clearly see or say this is the direction it’s heading.
Why does non-zero derivative imply local injectivity? Imagine walking along a path. If your velocity (derivative) never becomes zero, you’re always moving forward — never standing still or turning back. That guarantees you won’t step on the same spot twice (you won’t hit the same point twice) in a small stretch (interval). In short, a continuously nonzero velocity ensures the curve doesn’t intersect itself in a small neighborhood, and it has a clear direction at every point.
Definition. A path or contour in the complex plane is a curve that is made up of a finite sequence (finitely many) of smooth pieces or curves joined end-to-end. In other words, a contour is a piecewise smooth curve. Formally, $\Gamma$ is a contour if $\Gamma = \gamma_1 * \gamma_2 * \cdots * \gamma_n$ for some finite collection of smooth curves $\gamma_1, \dots, \gamma_n$. Key points about contours:
The computational implementation of curves in the complex plane involves using numerical methods to approximate the curve and its derivatives. One common approach is to use the numpy library in Python to perform numerical computations and the matplotlib library to visualize the curve.
Here is an example code snippet that demonstrates how to plot a curve in the complex plane:
import numpy as np
import matplotlib.pyplot as plt
# Define the function z(t) = x(t) + iy(t)
# This function represents a point on the unit circle in the complex plane,
# where x(t) = cos(t) and y(t) = sin(t).
def z(t):
return np.cos(t) + 1j * np.sin(t) # Return complex number z as x + iy
# j is the imaginary unit (mathematicians often use i, but in Python it’s j).
# It can be rewritten using Euler's formula directly as return np.exp(1j * t)
# np.cos(t) is the x-coordinate, np.sin(t) is the y-coordinate.
# If t = 0: cos(0) + i·sin(0) = 1 + 0i, point at (1, 0) on the circle.
# If t = π/2: cos(π/2) + isin(π/2) = 0 + i, point at (0, 1) on the circle.
# Generate an array of t values from 0 to 2π
# This will create 1000 evenly spaced values in the range [0, 2π],
# which are used to parameterize the unit circle.
t_values = np.linspace(0, 2 * np.pi, 1000)
# Compute the corresponding z values for each t
# Using a list comprehension, we apply the function z(t) to each t value
# to get the corresponding complex numbers on the unit circle.
z_values = [z(t) for t in t_values]
# Plot the curve
# Extract or unpack the real and imaginary parts of the complex numbers for plotting.
plt.plot([z.real for z in z_values], [z.imag for z in z_values])
plt.xlabel('Real axis') # Label for the x-axis
plt.ylabel('Imaginary axis') # Label for the y-axis
plt.title('Unit Circle in the Complex Plane') # Plot title
plt.axis('equal') # Set equal scaling for both axes
plt.grid() # Add a grid for better visualization
plt.show() # Display the plot

Curves in the complex plane are fundamental tools across mathematics, physics, and engineering. Their study enhances understanding of function behavior, physical phenomena, and engineering systems. Whether through integration paths or modeling wavefunctions, these curves provide essential insights into various fields.