Case Requirements
Everything you need to know before submitting your OpenFOAM case for validation or a converge run.
On this page
1. Directory Structure
Upload your case as a .zip file. The archive must contain a standard OpenFOAM case directory with the following structure:
Mesh requirement: Your case must include either:
- A pre-built mesh in
constant/polyMesh/, or - A
system/blockMeshDict— we will runblockMeshautomatically during preflight
If neither is present, the case will be rejected at validation.
2. Supported Solvers
Set the application field in your controlDict. We automatically detect the solver and route your case to the correct engine.
Standard OpenFOAM Solvers
| Solver | Type | Category |
|---|---|---|
simpleFoam | Steady-state | Incompressible |
pimpleFoam | Transient | Incompressible |
icoFoam | Transient | Incompressible |
pisoFoam | Transient | Incompressible |
interFoam | Transient | Multiphase |
rhoSimpleFoam | Steady-state | Compressible |
rhoPimpleFoam | Transient | Compressible |
potentialFoam | Steady-state | Potential flow |
UCF Stability-Enhanced Solvers
UCF solvers include adaptive relaxation, divergence containment, and early-stop detection. Automatically selected when your controlDict uses a UCF solver name.
| Solver | Type | Category |
|---|---|---|
UCF_simpleFoam | Steady-state | Incompressible |
UCF-SimpleCompressibleFoam | Transient | Compressible |
UCF_rhoSimpleFoam | Steady-state | Compressible |
UCF_rhoPimpleFoam | Transient | Compressible |
Any solver with a UCF- or UCF_ prefix is automatically routed to the UCF engine.
Unknown solvers will be rejected — contact us if you need a solver not listed here.
3. Tier Limits
Resource limits are enforced based on your selected tier. Cases exceeding these limits will be rejected during validation.
| Resource | Standard | Professional |
|---|---|---|
| Upload size | 500 MB | 500 MB |
| Max mesh cells | 5M | 50M |
| Max files in bundle | 2,000 | 2,000 |
| Run wall time | 2 hours | 48 hours |
| CPU cores | 8 | 16 |
| Memory | 16 GB | 32 GB |
| Max output size | 5 GB | 5 GB |
| Validation attempts | 3 | 3 |
Enterprise tier with custom limits is available — contact us for pricing.
4. What NOT to Include
The following will cause your case to be rejected during validation. These restrictions exist for security and reproducibility.
Forbidden file types
.exe, .so, .dylib, .dll.sh, .py, .pyc.o, .a.)Forbidden OpenFOAM constructs
codedFixedValue, codedMixed, codedFunctionObject, or any coded* directive#codeStream, dynamicCode, runtime code injectionlibs directive (external shared library loading)#include referencing external files outside the case directoryThese constructs allow arbitrary code execution and cannot be safely run in our sandboxed environment.
5. Parameter Validation
Your case dictionaries are checked for physically reasonable values. Cases with out-of-range parameters will be flagged.
| Parameter | Valid Range | Notes |
|---|---|---|
| deltaT (timestep) | 1e-10 – 1000 s | Must be positive |
| endTime | > 0 | Must be greater than startTime |
| writeInterval | > 1e-10 s | Very small values create excessive output |
| maxCo (Courant) | 0.1 – 50 | Recommended: 1–10 for stability |
| Relaxation factors | (0, 1] | Must be positive, at most 1.0 |
| Viscosity | 1e-10 – 1000 m²/s | Check units match your solver |
| Density | 0.001 – 10,000 kg/m³ | For compressible solvers |
6. Tips for Success
application matches a supported solver