본문으로 건너뛰기
cccskills
무료GitHub에 공개

catcolab-decapodes

CatColab Decapodes - Discrete Exterior Calculus for PDE modeling on meshes via Decapodes.jl integration. Model physics equations compositionally with automatic code generation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(3)

  • SKILL.md8.1 KB
  • CONCOMITANT_SKILLS.md1.6 KB
  • NEIGHBOR_SKILLS.md2.9 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

CatColab Decapodes: Discrete Exterior Calculus

Trit: -1 (MINUS - validator/verifier) Color: Purple (#8A2BE2)

Overview

Decapodes in CatColab enable Discrete Exterior Calculus (DEC) for modeling PDEs:

  • Differential forms: 0-forms (scalars), 1-forms (vectors), 2-forms (flux)
  • Operators: d (exterior derivative), ★ (Hodge star), Δ (Laplacian)
  • Multiphysics: Compose PDEs from different domains
  • Automatic code generation: Export to AlgebraicJulia/Decapodes.jl

This is CatColab's most advanced logic, connecting category theory to numerical PDE simulation.

Mathematical Foundation

Discrete Exterior Calculus discretizes differential geometry on meshes:

┌─────────────────────────────────────────────────────┐
│              DISCRETE EXTERIOR CALCULUS              │
├─────────────────────────────────────────────────────┤
│  Spaces (Differential Forms):                        │
│    Ω⁰ (0-forms): Scalars on vertices (temperature)  │
│    Ω¹ (1-forms): Vectors on edges (velocity)        │
│    Ω² (2-forms): Flux through faces (flow rate)     │
│                                                      │
│  Operators:                                          │
│    d: Ωᵏ → Ωᵏ⁺¹  (exterior derivative)              │
│    ★: Ωᵏ → Ωⁿ⁻ᵏ  (Hodge star)                       │
│    δ = ★d★: Ωᵏ → Ωᵏ⁻¹ (codifferential)              │
│    Δ = dδ + δd: Laplacian                           │
│                                                      │
│  De Rham Complex:                                    │
│    Ω⁰ ──d──► Ω¹ ──d──► Ω² ──d──► Ω³                 │
│     │         │         │         │                  │
│     ★         ★         ★         ★                  │
│     ▼         ▼         ▼         ▼                  │
│    Ω³ ◄──d── Ω² ◄──d── Ω¹ ◄──d── Ω⁰                 │
└─────────────────────────────────────────────────────┘

Double Theory

// DEC double theory (simplified)
pub fn th_decapodes() -> DiscreteDblTheory {
    let mut cat = FpCategory::new();

    // Form spaces
    cat.add_ob_generator(name("Form0"));  // Scalars
    cat.add_ob_generator(name("Form1"));  // 1-forms
    cat.add_ob_generator(name("Form2"));  // 2-forms

    // Differential operators
    cat.add_mor_generator(name("d0"), name("Form0"), name("Form1"));
    cat.add_mor_generator(name("d1"), name("Form1"), name("Form2"));

    // Hodge star
    cat.add_mor_generator(name("star0"), name("Form0"), name("Form2"));
    cat.add_mor_generator(name("star1"), name("Form1"), name("Form1"));
    cat.add_mor_generator(name("star2"), name("Form2"), name("Form0"));

    // Constraint: d ∘ d = 0
    cat.add_equation(
        compose(name("d0"), name("d1")),
        zero_morphism(name("Form0"), name("Form2"))
    );

    cat.into()
}

CatColab Implementation

Form Space Declaration

{
  "type": "ObDecl",
  "name": "Temperature",
  "theory_type": "Form0",
  "description": "scalar temperature field on vertices"
}

Operator Declaration

{
  "type": "MorDecl",
  "name": "gradient_T",
  "dom": "Temperature",
  "cod": "HeatFlux",
  "theory_type": "d0",
  "description": "gradient of temperature"
}

PDE Declaration

{
  "type": "EqDecl",
  "name": "heat_equation",
  "equation": "∂T/∂t = κ·Δ(T)",
  "description": "heat diffusion equation"
}

Physics Examples

Example 1: Heat Equation

∂T/∂t = κ·ΔT

Where:
  T: Form0 (temperature)
  κ: diffusivity constant
  Δ = ★d★d (Laplace-Beltrami)

CatColab composition:
  T ──d──► dT ──★──► ★dT ──d──► d★dT ──★──► ★d★dT = ΔT

Example 2: Navier-Stokes (2D)

∂ω/∂t + (v·∇)ω = ν·Δω

Where:
  ω: Form2 (vorticity)
  v: Form1 (velocity)
  ν: viscosity

Composition:
  Advection: v ──∧──► v∧ω (wedge product)
  Diffusion: ω ──Δ──► Δω

Example 3: Maxwell's Equations

dE = -∂B/∂t    (Faraday)
dB = 0         (no monopoles)
δE = ρ/ε₀     (Gauss)
δB = μ₀J + μ₀ε₀∂E/∂t  (Ampère-Maxwell)

Where:
  E: Form1 (electric field)
  B: Form2 (magnetic field)
  J: Form1 (current density)

Example 4: Shallow Water Equations

∂h/∂t + ∇·(hv) = 0         (continuity)
∂v/∂t + (v·∇)v = -g∇h      (momentum)

Where:
  h: Form0 (water height)
  v: Form1 (velocity)

Multiphysics Composition

Decapodes compose via operad algebras:

┌─────────────────────────────────────────────────────┐
│              MULTIPHYSICS COMPOSITION                │
├─────────────────────────────────────────────────────┤
│  Physics 1: Heat Transfer                            │
│    ∂T/∂t = κ·ΔT                                      │
│                                                      │
│  Physics 2: Advection                                │
│    ∂c/∂t = -v·∇c                                     │
│                                                      │
│  Composed: Advection-Diffusion                       │
│    ∂c/∂t = κ·Δc - v·∇c                               │
│                                                      │
│  Interface: Shared Form1 velocity v                  │
└─────────────────────────────────────────────────────┘

CatColab 0.2 Integration

CatColab 0.2 (Wren) introduced Decapodes integration:

// Export to Decapodes.jl
const analysis = await model.analyze({
  type: "decapodes-export",
  mesh: "sphere_mesh.obj",
  time_span: [0, 100],
  parameters: { κ: 0.1 }
});

// Returns animated solution visualization

GF(3) Triads

catcolab-decapodes (-1) ⊗ topos-catcolab (0) ⊗ catcolab-stock-flow (+1) = 0 ✓
fokker-planck-analyzer (-1) ⊗ catcolab-decapodes (0) ⊗ langevin-dynamics (+1) = 0 ✓

Commands

# Create Decapodes model
just catcolab-new decapodes "heat-transfer"

# Generate Julia code
just catcolab-export heat-transfer --format=decapodes

# Simulate on mesh
just catcolab-simulate heat-transfer --mesh sphere.obj --time 100

# Compose physics models
just catcolab-compose heat-transfer advection --interface velocity

Integration with Decapodes.jl

using Decapodes
using CombinatorialSpaces

# Load CatColab model
decapode = load_decapode("heat-transfer.json")

# Create mesh
mesh = loadmesh(Icosphere(3))

# Generate simulation code
sim = evalsim(decapode)

# Run simulation
u0 = initial_conditions(mesh)
prob = ODEProblem(sim, u0, (0.0, 10.0))
sol = solve(prob, Tsit5())

# Visualize
animate(sol, mesh, "heat_animation.mp4")

References

  • Hirani (2003) "Discrete Exterior Calculus" (PhD thesis)
  • Desbrun et al. (2005) "Discrete Differential Forms for Computational Modeling"
  • Patterson et al. (2023) "Decapodes: A diagrammatic framework for multiphysics"
  • Decapodes.jl
  • CatColab DEC Help

Skill Name: catcolab-decapodes Type: Discrete Exterior Calculus / PDE Modeling Trit: -1 (MINUS) GF(3): Conserved via triadic composition

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Model ElevenLabs voice synthesis as an ACSet schema with Unison ability handlers for typed voice operations. Use when integrating ElevenLabs TTS into category-theoretic pipelines, building typed voice synthesis workflows, or managing multi-voice narration with GF(3) conservation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

plurigrid/asi702026년 7월 10일 업데이트

Systematic process for analyzing and modernizing legacy applications to comply with the 12-Factor App methodology. Covers code analysis, configuration externalization, dependency management, and container/Kubernetes best practices.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

plurigrid/asi702026년 7월 10일 업데이트

13c0e3

무료

Gay MCP skill at invocation 26

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

plurigrid/asi702026년 7월 10일 업데이트

19d57d

무료

Gay MCP skill at invocation 5

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

plurigrid/asi702026년 7월 10일 업데이트

1ea91a

무료

Gay MCP skill at invocation 27

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

plurigrid/asi702026년 7월 10일 업데이트

1eab21

무료

Gay MCP skill at invocation 3

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

plurigrid/asi702026년 7월 10일 업데이트

plurigrid의 스킬 모두 보기

이 스킬의 문제 신고