QAMA est une mini-application de transport de particule Monte-Carlo. Cette application a été écrite à partir de Quicksilver, une mini-app écrite par le LLNL mais avec l'utilisation des ressources fourni par le framework Arcane.
Voici un schéma représentant la structure de Quicksilver (disponible ici : https://github.com/arcaneframework/arcane-benchs) :
On peut trouver (en autres) les éléments suivants :
Dans chaque module, nous avons les trois fichiers habituels :
L'interface du service RNG est une interface de service incluse dans le framework Arcane. Dans Quicksilver, on utilise notre propre implémentation.
BasicParticleExchanger
implémentant l'interface Arcane::IParticleExchanger
ou SimpleCsvOutput
implémentant l'interface Arcane::ISimpleTableOutput
sont des services inclus directement dans le framework Arcane (c'est pour cela qu'ils sont en pointillés).