First run: Poisson

This is the smallest complete ImmersX workflow. It introduces parameter-file configuration, mesh generation, a scalar finite-element problem, and output.

The executable is poisson, and the canonical input is tutorials/poisson/poisson_2d.prm.in. CMake configures the .in file into the build tree so that its output and data paths are independent of the launch directory.

subsection Poisson
  set Dirichlet boundary ids             = 0,1,2,3
  set FE degree                          = 1
  set Initial refinement                 = 3
  set Output directory                   = @TEST_OUTPUT_DIR@/tutorial-output/poisson-2d
  set Output name                        = poisson_2d
  set Output results also before solving = false
  subsection Dirichlet boundary conditions
    set Function constants  =
    set Function expression = 0
    set Variable names      = x,y,t
  end
  subsection Grid generation
    set Grid generator           = hyper_cube
    set Grid generator arguments = -1: 1: false
    set Triangulation type       = distributed
  end
  subsection Refinement and remeshing
    set Coarsening fraction         = 0
    set Maximum number of cells     = 20000
    set Number of refinement cycles = 3
    set Refinement fraction         = 0.3
    set Strategy                    = global
  end
  subsection Right hand side
    set Function constants  =
    set Function expression = 1
    set Variable names      = x,y,t
  end
  subsection Solver
    subsection Control
      set Log frequency = 1
      set Log history   = false
      set Log result    = true
      set Max steps     = 100
      set Reduction     = 1.e-10
      set Tolerance     = 1.e-12
    end
  end
end

From the repository root, run:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DDEAL_II_DIR=/path/to/deal.II
cmake --build build -j
./build/poisson build/tutorials/poisson/poisson_2d.prm

The solution is written below build/test_output/tutorial-output/poisson-2d. The exact location is controlled by TEST_OUTPUT_DIR in the configured input. Continue with the Poisson tutorial to understand the choices, then follow the learning path.