Hand-Coded, Not AI-Generated

Every piece on Geometry of Feeling begins as code I write by hand in Python.

No image generators. No style transfer. No prompts.
Just equations, structure, color, revision, and feeling.

There are a lot of ways to make an image now. This is mine.

Geometry of Feeling is built from mathematical systems that I write, test, and revise by hand. Every line in every piece traces back to code. The equation is not something I add afterward as a concept or caption. It is the cause of the image.

That difference matters to me.

I am not asking a model to imitate a style. I am building a structure and pushing it until it starts to feel like something human: awe, grief, peace, connection, belonging, desire, growth.

The work begins in mathematics, but it is made in pursuit of feeling.

What Does Hand-Coded Art Mean?

For me, hand-coded means the image is built from rules I choose and shape directly.

That can mean:

  • — a field of corona filaments tapering into darkness
  • — a set of vortices turning into blocks
  • — concentric rings warped until they soften into something organic
  • — branching systems repeating until they begin to feel alive
  • — oscillators moving from chaos into synchrony

The image does not appear because I asked for it in language. It appears because I wrote the behavior that produces it.

Then I revise. I change the density, spacing, rhythm, turbulence, color transitions, thresholds, symmetry, asymmetry, softness, scale.

And I keep changing them until the image stops feeling like an output and starts feeling like a piece.

Why I Care About the Difference

Because the process shapes the meaning.

If a piece is about grief, I want the structure of the image to carry that grief. I want the mathematics itself to behave like diffusion, disappearance, reorganization, absence.

If a piece is about awe, I want the image to feel governed by radiance, orbit, scale, singularity, collapse.

If a piece is about belonging, I want the form to hold rather than simply decorate.

That is why I work this way. The feeling is not laid on top. It is built in.

How Is Each Piece Made?

1. A feeling comes first

Usually the process starts with a feeling that seems too abstract to draw directly: awe, grief, peace, longing, tenderness, humility. I ask what kind of system might behave like that feeling.

2. A rule or equation follows

That system might be a field, a branching process, a diffusion equation, a recursive subdivision, coupled oscillators, a gravitational or radiative decay, concentric rings warped by noise, a dynamical system like the Lorenz attractor.

3. I build the image from the rule

From there I write the code by hand in Python and begin generating variations.

4. I revise until the piece feels inevitable

Most of the work is revision: less noise, more restraint, fewer lines, softer edges, stronger convergence, better color, clearer tension, better silence. A lot of the final image comes from removing things.

Four Pieces, Up Close

Eclipse — Awe

I wanted to render the feeling of seeing an eclipse in code. Not just the image of it, but that strange mix of awe, stillness, and pressure when the light turns unreal. So Eclipse was built from hand-coded corona filaments tapering from gold into darkness. No glow effect. No brush. No filter. Just radiance, density, and the hush of an impossible ring of light.

# ECLIPSE — Corona filaments
# I(r) = I_corona / r
# Each filament radiates outward from the rim,
# intensity falling with inverse distance from the corona edge.
# Thousands of lines, each one tapered from bright gold to nothing.

The inverse-distance field gives each filament its natural taper — bright at the rim, fading into the surrounding dark.

Gravity — Comprehending

Gravity begins with streamlines moving through vortices. Then the densest motion gets subdivided into blocks until turbulence crystallizes into structure. The storm is still there. It has just been squared. That matters because the piece is part of Comprehending — a series about what understanding does to motion, complexity, and living things when we force them into clarity.

# GRAVITY — Paired vortex fields turned to blocks
# dr/dt = -∇Φ, Φ ∝ 1/|r − r₀|
# Streamlines trace through a gravitational potential,
# then recursive block-averaging squares the turbulence
# into comprehensible structure.

Streamlines become blocks — the same field, seen through the simplifying lens of understanding.

Nest — Belonging

Nest starts as concentric rings, then softens through layered distortion until the geometry feels less mechanical and more held. What I care about in a piece like this is not just the form. It is the feeling that the center is being kept, not trapped.

# NEST — Domain-warped concentric rings
# f(r,θ) = e^(−r²/σ²) · [0.6 + 0.4·cos(kr)ⁿ]
# Concentric rings shaped by a Gaussian envelope,
# then warped with layered noise until perfect circles
# become something softer — something that holds.

The warping is the whole point — perfect geometry becoming shelter.

Heat Diffusion — Grief

Heat Diffusion is one equation run again and again. The first curve holds all its intensity in one concentrated place. Each step after, it flattens and spreads. The math does not know it is about grief. It just knows that concentrated things dissipate.

# HEAT DIFFUSION — One equation, repeated
# ∂u/∂t = α · ∂²u/∂x²
# A single concentrated peak of warmth,
# run through the diffusion equation at increasing time steps.
# Each pass flattens and spreads.
# Eventually the source is gone.

Warmth that spreads until you can't tell where it started.

Is This AI-Generated Art?

This is not a claim that one way of making images is morally pure and another is not. It is just a statement of what this work is. Geometry of Feeling is not AI-generated. It is hand-coded. That matters here because the process is inseparable from the meaning. The image is not only what you see. It is also the behavior that created it.

Why It Matters for the Finished Print

I think people can feel the difference when a piece has been built this way. Not because they can read the code. Not because they need to understand the equation. But because the work carries a certain kind of internal necessity. The lines are there for a reason. The densities are there for a reason. The silence is there for a reason. That is what I want the prints to hold: not just beauty, but structure with emotional consequence.

Questions

Are these works AI-generated?

No. Every piece is built from code I write by hand in Python. I do not use image generators, prompts, or style transfer.

What does hand-coded mean?

It means the underlying structure of each image comes from rules, equations, and systems I write directly, then refine through iteration.

Do I need to understand math to connect with the work?

No. The math is the cause of the image, not a barrier to it. The point is the feeling.

Why use mathematics to make emotional art?

Because mathematics can govern motion, tension, repetition, decay, attraction, spread, and structure. Those are also emotional experiences.

Are these available as prints?

Yes. Museum-quality giclée prints on Hahnemühle German Etching 310gsm are available throughout the site in multiple sizes, starting from $45 with free shipping.

I think of these works as minimalist art prints built from exact systems in search of human feeling. Not prompts. Not imitation. Not randomness mistaken for mystery. Just code, revision, restraint, and the long process of turning a structure into something that feels true.