Cats2D Multiphysics > Overview > Control file

## Cats2D control file format

Cats2D requires a text input file named <jobtitle>ctrl.txt (default is flowctrl.txt) to define a physical problem to be solved. Simple commands are written to select a coordinate system, to define governing equations for each material, to apply boundary conditions to boundaries, and to define flags that control various aspects of code behavior. Commands and comments can be given in any order, and are written in a syntax that is easy to understand. The lid-driven cavity, for example, requires only two commands:

flow(on) bc(u-dirichlet(3,(3,0,0,0),(1,1.0)))

Here is a more complicated example, the EFG (edge-defined film-fed growth) problem:

geometry(axisymmetric)

reference-frame(translational,2)

multiphase(3)

material(1,3,3,4,5,liquid)

material(2,2,1,2,solid)

material(3,1,6,graphite)

% %%%%%%%%%% ENERGY %%%%%%%%%%%

energy(on)

% growth interface

bc(latent-heat(1,(0)))

% die bottom and inlet temperature

bc(t-dirichlet(9,(3,1,1,0)))

bc(t-dirichlet(4,(3,1,1,0)))

% furnace to melt, crystal side, die, crystal end

bc(t-robin(2,(0)))

bc(t-robin(7,(0)))

bc(heat-flux-user(8,(2,17,5)))

bc(heat-flux-user(10,(2,17,5)))

% %%%%%%%%%% FLOW %%%%%%%%%%%

flow(on,1)

% meniscus

bc(capillary-traction(2,(2,0,0)))

% density change at interface

bc(continuity(1,(2,1,1)))

% die inlet

bc(outflow(4,(1,0)))

% %%%%%%%%%% MESH %%%%%%%%%%%

mesh(on)

% growth interface

bc(isotherm(1,(0)))

% meniscus

bc(kinematic(2,(2,0,0)))

% growth angle condition computes y-position of trijunction

bc(angle(2,(3,1,2,0)))

% side of crystal

bc(slope(8,(1,0)))