Reference
File formats
What comes in, what goes out, and the constraint attached to each. Nothing enters a project without a unit.
Import: measured signals
File ▸ Import Signal… (WAV/CSV/UFF), or Import Signal… on the ribbon.
| Format | Extensions | What it must contain |
|---|---|---|
| WAV | .wav | Any sample rate and channel count. The samples carry no physical unit; your scale factor turns them into engineering values. |
| CSV / text | .csv, .txt | One column per channel. Either a first column that is time in seconds, or a sample rate you type in when asked. .txt is read as CSV. |
| UFF / UNV | .uff, .unv | A time record, dataset 58. A UFF holding only geometry or other dataset types is refused. |
If a CSV has no time column, inWaves opens the CSV sample rate dialog and asks for Sample rate in Hz. Everything downstream hangs its frequency axis on that answer.
The unit assignment is mandatory
Every import stops at a dialog with one row per channel, demanding three things:
- Quantity. Acceleration, velocity, displacement, sound pressure, force or voltage.
- Unit. Offered per quantity: m/s², g, mm/s² for acceleration; Pa, kPa, mPa for sound pressure; N, kN for force. It must match the quantity's dimension.
- Scale. The sensitivity correction: physical value = raw value × scale. A raw WAV in [−1, 1] from a 2.0 V/g chain becomes real acceleration here.
The data is converted to SI here, so a channel imported in g and one in m/s² are the same kind of number by the time a solver sees them. UFF files that declare their units prefill these fields.
Import: geometry
File ▸ Import Geometry… (STEP/IGES/STL/OBJ), or Import Geometry… on the ribbon.
| Format | Extensions | What you get | Unit |
|---|---|---|---|
| STEP | .step, .stp | An exact boundary-representation solid, read by the CAD kernel. The only geometry that can be tetrahedralised for FEM. | Declared in the file header and normalised to metres on the way in. |
| IGES | .iges, .igs | The same CAD path, with the loose trimmed surfaces sewn into a solid. Requires gmsh. | Declared in the file header. |
| STL / OBJ / PLY | .stl, .obj, .ply | A display shell of triangles. Usable for acoustics, contact and motion; not meshable into a volume. | None in the file. You are asked, and mm is the engineering default. |
The unit prompt says it plainly: the model is not rotated, the axes stay as authored, Z up. Pick the unit the file was drawn in. Nothing downstream can undo it: a model that came in 1000× too small is geometrically consistent and wrong.
The import dialog offers Length unit for IGES too, but the CAD reader takes the unit from the IGES header whatever you pick. Your answer has no effect on the geometry, though the confirmation prints it back. If an IGES part looks the wrong size, fix it with the rescale below.
Assemblies
A STEP holding several solids comes back split into one part per solid, in a folder named after the file. A bearing arrives as races, cage and balls, each selectable, materialisable and meshable. One undoable step.
The health check
A watertight display shell says nothing about whether a volume mesher can fill it, so the import checks at once. If anything is flagged, one of two offers appears:
- A scale problem. The part is implausibly large or small. You are asked for the Correct unit and Rescale applies it. Offered first and alone: nothing downstream survives a wrong scale.
- A meshability problem. Inverted-normal shells, or sub-millimetre features like thread relief and chamfers. Heal and Mesh runs the CAD kernel's shape repair and meshes at a suggested element size that skips the micro-features.
STEP → tetrahedral mesh
File ▸ STEP/IGES → Tet Mesh… (gmsh), or Volume Mesh ▸ Generate Volume Mesh… on the Mesh ribbon for a part that already carries its CAD solid.
Volume meshing is done by gmsh, which does not ship with inWaves. It is a separate program under the GPL, called as an external tool. Install it with Install gmsh… and inWaves finds it; if yours sits somewhere unusual, point at it with Choose the gmsh File….
Volume meshing is therefore desktop-only: a native program cannot run in a browser tab. The input must also be a real solid. An STL or OBJ is already a triangulation; remeshing it reproduces the exporter's facets, not the designer's surface.
Projects
A project is a single .iwp holding geometry, meshes, materials, supports, loads, signals, results and the solver settings that produced them. Open one with File ▸ Open… (.iwp) or from the welcome screen; write it with Save or Save As…. It is self-contained.
Export
| What | How | File | Contents |
|---|---|---|---|
| Project | Save / Save As… | .iwp | Everything, including the solver settings. |
| Signal audio | WAV on the signal panel | <signal>_<channel>_norm<factor>.wav | 32-bit float at the signal's own sample rate, normalised. |
| Signal data | CSV on the signal panel | <signal>_<channel>_SI.csv | Time and value in SI, with the quantity and unit in the column headers. |
| Mode table | CSV on the mode-set panel | <mode set>.csv | Every row, not just those on screen: index, frequency in Hz, damping ratio, volume factor. For a buckling set the first column is the critical load factor λ, and the header says so. |
| Chart image | Save image in the chart toolbar | .png | The chart as displayed, on a white background. |
Audio files are limited to ±1, so the exported WAV is scaled to fit. The factor is written into the file name and reported when the export finishes: SI value = sample ÷ factor. Use the WAV to listen and the CSV to measure.
inWaves cannot write STEP, STL, OBJ or any mesh format today. Geometry travels in one direction only: in. If you need the meshed body elsewhere, keep the CAD file the part came from.
What if my file is refused
| What the application says | What is actually wrong | What to do |
|---|---|---|
| “The CSV has no time column” | The first column is not time in seconds and no sample rate was supplied. | Enter the sample rate by hand when asked, or re-export with time [s] as the first column. |
| “No time record (dataset 58) was found in the UFF file” | The UFF holds geometry, node data or another dataset type, but no measurement. | Choose a file that contains measurements. |
| “The unit is not valid” | The unit does not match the quantity's dimension: Pa on an acceleration channel, for instance. | Fix the quantity or the unit so they agree (acceleration: m/s², g; pressure: Pa, kPa). |
| A refusal naming your CAD system and telling you to export STEP | You handed over a native CAD container: SolidWorks, CATIA, Inventor and the like. No open-source library reads them. | Export STEP from that CAD system. STEP carries both the solid and its unit. |
| “STEP import is not available here” | The browser build has no CAD reader. | Use the desktop build, or import STL/OBJ instead and accept that it cannot be meshed into a volume. |
| “gmsh is not installed” / “gmsh meshing is not available” | The external mesher is missing, or is somewhere inWaves did not look. | Install gmsh…, or point at an existing installation with Choose the gmsh File…. |
| “gmsh could not produce a volume from this geometry” | Tetrahedralisation needs a closed solid. The file holds only surfaces or shells, or the solid has holes, so the volume is undefined. | Run the surface-health tool, accept the Heal and Mesh offer, or close the solid in CAD and re-export. |
| “This part carries no CAD solid” | The part arrived as STL or OBJ, so inWaves holds only a triangulated surface. | Import the STEP version of the same part. |
| An IGES import that asks for gmsh | IGES display geometry comes from gmsh's own CAD tessellation. | Install gmsh, or export STEP instead, which imports without gmsh. |
Formats and limits on this page describe inWaves 0.1.0.