James

James is a block-structured hexahedral mesher. It reads a script, builds each part of the model as a structured block of hexahedral elements, shapes the part onto surfaces and curves, merges the parts where they meet, and writes the mesh in a form a solver reads. The script language is the one TrueGrid uses, so a script written for TrueGrid runs in James as long as it stays inside the set of commands this manual describes, with the differences the compatibility chapter lists, and nothing in this manual assumes you have used it. The version this manual describes is in the footer of every page.

How this manual is arranged

  • Getting started builds James, runs its first script, and lists every command-line flag and exit code.
  • Concepts explains how James thinks about a mesh: the computational and physical meshes, blocks and partitions, reduced indices, regions and progressions, the fixed order in which part commands are applied, and the three phases of a script.
  • Writing a script gives the rules of the language: tokens and comments, parameters and arrays, expressions, the two families of control statements, and include.
  • Parts, Geometry and Shaping a part take a part from its six lists to a mesh fitted to surfaces and curves.
  • Merge and output covers tolerances, node numbering, write, and the two file formats.
  • The command reference has one page per command, the diagnostics reference one entry per coded message James can print, and the changelog one entry per version.

Every example in this manual is a script that the test suite runs, named beside it; what you read is what the tests check.


James 0.3.1.

This site uses Just the Docs, a documentation theme for Jekyll.