Flowchart · D1

The ecosystem

How the parts fit together: what comes in, which tools and solvers handle it, and how CompliSpec turns results into a requirement check.

Start Engineer action Decision Result Refuses to guess
flowchart LR
  subgraph IN[Inputs]
    CAD([CAD: Onshape, STEP, STL]):::start
    FIELD([Field markups and site notes]):::start
    CHAT([AI design chat]):::start
  end
  subgraph KJ[KJLabs Simulators]
    FEA[FEA pipeline]:::act
    DUCT[3D duct designer]:::act
    AIR[Airflow and loss simulator]:::act
    FEAS[Fan and cyclone quick-look]:::act
  end
  subgraph SOLVE[Open-source solvers]
    S1[CalculiX, Code_Aster, Elmer, FreeFEM]:::res
    S2[OpenFOAM, Code_Saturne]:::res
  end
  subgraph CS[CompliSpec]
    REQ[Requirements as code]:::act
    CHK{Can the rule be checked?}:::dec
  end
  CAD --> FEA
  CHAT --> FEA
  FIELD --> DUCT
  FEA --> S1
  AIR --> S2
  FEAS --> S2
  DUCT --> AIR
  S1 --> REQ
  DUCT --> REQ
  REQ --> CHK
  CHK -->|yes| PF[Pass or fail with source]:::res
  CHK -->|procedural| CL[Inspection checklist]:::res
  CHK -->|inputs missing| NC[Not computable: says what is missing]:::warn
  classDef start fill:#ede9fe,stroke:#7c3aed,stroke-width:2px,color:#1e1b4b
  classDef act fill:#dbeafe,stroke:#2563eb,stroke-width:2px,color:#0f172a
  classDef dec fill:#fef3c7,stroke:#d97706,stroke-width:2px,color:#422006
  classDef res fill:#dcfce7,stroke:#16a34a,stroke-width:2px,color:#052e16
  classDef warn fill:#fee2e2,stroke:#dc2626,stroke-width:2px,color:#450a0a

Step by step

  1. Inputs: CAD from Onshape, STEP or STL; field markups and site notes; or an AI design chat that becomes a 3D model.
  2. KJLabs Simulators: the FEA pipeline, 3D duct designer, airflow and loss simulator, and the fan and cyclone quick-look.
  3. Open-source solvers: four structural codes and two CFD codes run headless, each validated on a reference case first.
  4. CompliSpec: results and duct layouts are checked against requirements stored as code, one jurisdiction at a time.
  5. Three honest outcomes: a pass or fail with its source, an inspection checklist for procedural rules, or not computable with the missing inputs named.