Skip to main content
AI/MLplurigrid

phase-portrait-generator

Generate phase portraits for 2D dynamical systems. Use when visualizing vector fields, nullclines, and trajectories.

Stars
23
Source
plurigrid/asi
Updated
2026-04-26
Slug
plurigrid--asi--phase-portrait-generator
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/plurigrid/asi/HEAD/plugins/asi/skills/phase-portrait-generator/SKILL.md -o .claude/skills/phase-portrait-generator.md

Drops the SKILL.md into .claude/skills/phase-portrait-generator.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Phase Portrait Generator

Generates phase portraits showing vector fields and trajectories in 2D state space.

When to Use

  • Visualizing 2D autonomous systems
  • Plotting nullclines and equilibria
  • Trajectory analysis in phase space

GF(3) Role

PLUS (+1) Generator - creates visual outputs from differential equations.

Quick Example

import numpy as np
import matplotlib.pyplot as plt

def phase_portrait(f, xlim=(-3,3), ylim=(-3,3), density=20):
    x = np.linspace(*xlim, density)
    y = np.linspace(*ylim, density)
    X, Y = np.meshgrid(x, y)
    U, V = f(X, Y)
    plt.streamplot(X, Y, U, V, density=1.5)
    plt.xlabel('x'); plt.ylabel('y')

# Van der Pol oscillator
phase_portrait(lambda x, y: (y, -x + (1 - x**2) * y))

Integration with bifurcation skills

Forms triad with:

  • bifurcation (0): detects transitions
  • bifurcation-generator (+1): parameter space
  • phase-portrait-generator (+1): state space