.claude/skills/chebfun-fundamentals/SKILL.md
Understand what chebfuns are, their philosophy, and how to construct them. Use when creating numerical representations of functions on intervals.
npx skillsauth add ShaneLogic/SolarLab chebfun-fundamentalsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A chebfun is a numerical representation of a function of one variable defined on a finite interval [a, b]. It achieves for functions what floating-point arithmetic achieves for numbers—rapid computation where each operation is exact apart from a very small relative rounding error.
Core Philosophy: "Feel symbolic but run at the speed of numerics"
The syntax for chebfuns is almost exactly the same as MATLAB syntax for vectors, with familiar commands overloaded in natural ways.
f = chebfun('cos(20*x)') % String expression on default domain
f = chebfun(@(x) besselj(0,x)) % Anonymous function handle
f = chebfun('cos(20*x)', [0, 100]) % Custom domain [a, b]
f = chebfun(@(x) sin(x), [0, 2*pi]) % Function handle with domain
[-1, 1] (mimics Chebyshev polynomials)Chebfuns are represented by polynomial interpolation in Chebyshev points (or equivalently, expansions in Chebyshev polynomials).
Chebyshev Points Formula (for interval [-1, 1]):
x_j = cos(j*pi/N) for j = 0, ..., N
Adaptive procedures aim to represent each function to roughly machine precision (about 15 digits of relative accuracy).
development
Understand and comply with Driftfusion software licensing terms, including the open-source AGPL v3.0 frontend and proprietary MATLAB pdepe solver backend. Use when using, modifying, or distributing Driftfusion code.
development
Initialize the Driftfusion simulation environment and create parameter objects. Use this skill when starting a new MATLAB session or setting up device properties for simulation.
development
Define device layer structure, configure spatial and time meshes, and build device structures with interface grading. Use this skill when setting up the physical geometry and discretization of a simulation device.
research
Analyze simulation solutions, calculate physical quantities, and generate plots. Use this skill when processing completed simulations, extracting currents/densities, or visualizing results.