Getting started: library concepts

This folder contains the slower, code-oriented introduction to the OpenPFC library. It is for readers who have already completed the short Start here build-and-run check and now want to understand the objects behind that run.

For the complete documentation map, use the documentation index. For a role-based sequence covering applications, extension work, or downstream integration, use Learning paths.

Tutorial sequence

  1. Library basics

    • create a domain;

    • decompose it across MPI ranks;

    • construct and use the FFT layer;

    • build a small out-of-tree CMake consumer.

  2. Functional field operations

    • express initial and boundary operations without repeating nested index loops;

    • connect field operations to the extension style used elsewhere in the framework.

The runnable examples that accompany these ideas are catalogued in Examples catalog. A guided sequence through the spectral examples is available in Spectral examples sequence.

Choose the next document

Next goal

Document

Build a config-driven executable in another repository

Minimal custom application

Understand the main package layers

Architecture

Find the header for a type

Tour of main types

Understand JSON/TOML wiring

Application pipeline

Add models, modifiers, or writers

Extending OpenPFC

Run an existing application

Applications

Scope

This folder teaches library concepts. Installation details belong in INSTALL.md, short operational procedures belong in recipes/, and exact options and formats belong in the reference index. Keeping those details in their canonical documents prevents tutorial examples from drifting away from the tested build and runtime interfaces.