Skip to content

code_aster from a developer's perspective

March 18, 2027

OpenOnline

Course summary

See the course page

Do you recognize yourself?

  • You use code_aster as an end user, but as soon as you need to modify a constitutive law or add a computation option, you're stuck: you don't know where to look in the source code.
  • You've tried to compile code_aster but the dependencies (Spack, external libraries, environment setup) gave you a hard time, and you can't quite tell what comes from Spack versus what actually belongs to code_aster.
  • You want to contribute cleanly to the codebase (bug fixes, new developments, patches) but you don't master the full workflow: build, unit testing, non-regression testing, packaging.

Why our training in particular?

One day, one complete workflow

You follow the full chain checkout → environment → build → modify → rebuild → test → package → run. Not a quick tour of the code, but a real end-to-end thread.

You get your hands in the code

Every theoretical step is immediately followed by hands-on work on the actual code_aster source, in Python as well as C++/Fortran. You leave with modifications you compiled and validated yourself.

Trainers who develop code_aster every day

Our engineers contribute to the codebase as part of industrial projects at Simvia. On site, they share best practices and pitfalls in real time — the kind you won't find in any documentation.

Close, hands-on supervision

Small group of trainees, with a trainer on hand to unblock anyone stuck during the hands-on work.

From dev environment to HPC delivery

You leave able to build a Docker image, convert it for Apptainer/Singularity, and run a verification job on your cluster.

Audience

  • Industry: engineers and developers who want to contribute to the code_aster codebase, package deliverables, or deploy the code on HPC.
  • Academia: researchers and PhD students developing their own features within code_aster.

Prerequisites

Solid practice of code_aster as an end user (commands, catalogs). Basic notions of Python and C++/Fortran are helpful. No prior compilation experience required.

Detailed programme

  1. Morning: from discovering the source code to the first modification

    • code_aster from a developer's perspective: source repository, main building blocks, Python / C++ / Fortran, catalogs, tests, external libraries. Where to look when you want to change something.
    • Building your local environment: retrieving the sources, devcontainer, Spack environment, dependencies, key variables. Understanding what Spack provides versus what actually belongs to code_aster.
    • Compiling code_aster: configuration, compilation, installation. Full build vs. incremental recompilation. Where to find the produced binaries/modules. Quickly diagnosing a compilation error.
    • First modification: a small Python/catalog change, visible enough to understand the source → build → run path. Rebuild, then run a computation validating the change.
  2. Afternoon: compiled modifications, testing and delivery

    • Architecture you'll actually use: code_aster/, bibcxx, command catalogs, behaviors, messages, tests. Not an exhaustive review — more "where should I go depending on what I want to change?"
    • Compiled modification: a small C++ or Fortran example, a localized change, incremental recompilation, checking that the new library is actually used.
    • Testing a modification properly: organization of the test base, running a unit test / code_aster testcase, reading .mess files, OK/NOOK criteria, adding or adapting a non-regression test.
    • Building a deliverable: clean installation of the build, then building a Docker image. Difference between the dev environment and the runtime. Best practices for versioning/tagging the image.
    • The complete developer workflow: recap of checkout → env → build → modify → rebuild → test → package → run. Tips for going further and contributing cleanly.

Practical details

Dates
March 18, 2027
Duration
1 day(s)
Location
Online
Language
English

Available for online training only

Performance indicators

Trained participants
-
Attendance rate
-
Satisfaction rate
-
Success rate
-

Accessibility

We are committed to making our training accessible to people with disabilities. Every situation is unique, so please contact us before registering so that we can study together the educational, technical or organisational adaptations that can be put in place.

More info

Basile Marchand
Your trainer

Basile Marchand

I am an expert in computational mechanics and a trainer in scientific simulation. Holding a PhD in computational mechanics, I spent several years in academia, working in close collaboration with industry on advanced modeling and finite element analysis challenges. Alongside my research activities and collaborative projects, I taught programming and scientific computing at an engineering school, which allowed me to develop solid pedagogical experience. Today, as Computational Mechanics Tech Lead at Simvia, I bring over 10 years of experience in computational mechanics and industrial simulation environments. I design and deliver high-value training programs for engineers, R&D teams, and PhD students, with a strong emphasis on combining theoretical rigor, software best practices, and real-world applications. My goal is to make complex concepts accessible and to offer a clear progression toward operational skills that can be put to use immediately after training — from an introduction to the methods all the way through to their integration into industrial workflows.

Learn more

Pricing

Enterprise
€1800 (excl. taxes)
Academic
€800 (excl. taxes)

Included: help installing the latest version of the code...

March 18, 2027

code_aster from a developer's perspective - online training | Simvia