Metafold DTB Component Reference

This page documents the structural components that assemble and dispatch a Metafold DTB simulation — authentication, parts, run settings, and the experiment dispatchers. For the material components (MF Neo-Hook Mat, MF Mooney Mat, etc.), see the [[Material Models in Metafold for Grasshopper]] page.

💡 Tip: A minimal simulation needs just five components wired together: MF Auth → a material → MF Deformable (your sample) + MF Rigid (the piston) → MF DTB Experiment. Everything else (MF SimConfig, MF Simulation, MF Multiple Simulation Experiment) adds control or lets you compare several runs at once.

Metafold Auth

The concept: This component manages authentication. It initiates a browser-based login flow and maintains the resulting session, enabling the dispatch components to communicate with Metafold's servers on your behalf.

Inputs:

  • Login URL (URL) — defaults to the production API; only change this if you're pointed at a different environment

Outputs:

  • Client (C) — feed this into MF DTB Experiment or MF Multiple Simulation Experiment
  • Status (S) — will show if the session is logged in or no.
Figure 1:
Figure 1: Metafold Auth ("Metafold Login") — Login URL in, Client and Status out; this is the component that starts the browser authentication flow.

Metafold DTB Material Preset

The concept: The fast path to a working material without tuning any parameters yourself — picks one of Metafold's built-in materials.

Inputs:

  • Preset (P) — a built-in material, chosen by name; default is default_midsole_nominal (shown as Midsole in the dropdown)

Available presets:

  • Defaults (generic, role-based): default_midsole_nominal, default_outsole, default_upper_foam, default_piston_material, default_support_material
Figure 2:
Figure 2: Metafold DTB Material Preset — the Preset input picks a built-in material by name (e.g. default_midsole_nominal), outputting a ready-to-use Material and Summary.
  • Named (specific real materials): material_abs, material_aluminum, material_basf_epd, material_basf_pp1400_xy, material_basf_pp1400_z, material_basf_rg3280, material_basf_tpu01, material_eos_pa11, material_eos_tpe300, material_epu_41, material_epu_45, material_nylon_6, material_nylon_12, material_pla, material_stainless_steel, material_ti64, material_tpu

Outputs:

  • Material (M) — connects to the Material input on MF Deformable
  • Summary (S) — gives a summary of what the preset is actually doing (the material's key properties at a glance)

Good for a first pass or a quick sanity-check run before you invest time in a properly calibrated material from the [[Material Models in Metafold for Grasshopper]] page.

Metafold DTB Deformable (a sample part)

The concept: Turns a mesh plus a material into a part that will actually deform in the simulation — this is what you use for the thing you're testing (the sample), as opposed to the piston or a support.

Inputs:

  • Geometry (G) — a Rhino mesh
  • Material (M)
  • Name (N) — optional; otherwise derived from the geometry

Outputs:

  • Part (P) — feed into an experiment or MF Simulation
Figure 3:
Figure 3: Metafold DTB Deformable — the sample-part component: Geometry and Material in, Part out.

Metafold DTB Rigid (the piston, last, or a rigid support)

The concept: Turns a mesh into a rigid part — either the piston that compresses your sample, or a stationary support underneath it. Unlike MF Deformable, this component doesn't deform no matter what material or forces are applied.

  • Type (T) — selects the part's role:
    • Mesh (0) — a plain mesh part. Note: this produces an ordinary deformable part, not a rigid one — to get rigid behavior from Type 0, give it a Rigid material, or just use Piston Mesh / Support Mesh instead, which are rigid by construction.
    • Piston Mesh (1, default) — the moving piston that compresses the sample
    • Support Mesh (2) — a stationary rigid base the sample rests on. Rigid and stationary by default, uses the built-in support material, and (unlike the piston) has friction enabled by default — a coefficient of 0.1 — so samples don't slide freely across it. If you don't model a base at all, the grid's lower Z face already acts as a fixed boundary.
  • Velocity Profile (V) — optional keyframes {t, vx, vy, vz} describing how the part moves over the simulation's time axis. Velocities are in m/s. A negative component moves the part along that axis, so a downward press along Z is vz negative. Omit the profile to use the built-in piston motion (a press-and-release ramp). The t values must increase monotonically (each keyframe strictly later than the last). If you're using Force Limit, the profile should have only one zero-velocity crossing, in the middle (i.e. a single press-then-release shape), and should not start or end on a zero velocity value — otherwise Force Limit won't behave as expected.
Figure 4:
Figure 4: Metafold DTB Rigid — unwired view showing all six inputs (Geometry, Material, Velocity Profile, Type, Name) and the Part output.
Figure 5:
Figure 5: Velocity Profile keyframes — a symmetric press-and-release stroke: vz ramps negative then back to positive.

Metafold DTB Rigid with Force Control

  • Name (N) — optional; otherwise derived from the geometry
  • Force Limit (F) — caps the load: when the measured force on a face reaches the given value, the part jumps to zero velocity and stops pressing, rather than continuing on its velocity profile. Internally it's a face plus a value. This is how you reproduce a load-limited rig instead of a fixed-displacement one — note it's a hard stop at a threshold, not a continuous force controller that tracks a target force curve throughout the run.

Outputs:

  • Part (P) — feed into an experiment or MF Simulation
Figure 6:
Figure 6: Metafold DTB Rigid — wired as the piston: Geometry, Material, a Velocity Profile (fed by a Panel value here), Type, Name, and Force Limit (set to 10000).

Metafold DTB SimConfig (run settings)

The concept: The numerical settings for the run — how long it simulates, how finely it's resolved, and which solver runs it.

Inputs:

  • Max Resolution (Res, default 64) — the sampling density; see the resolution guidance below
  • Max Time (T, default 0.04s) — total simulated duration; should be long enough for the piston's velocity profile to finish (compress and release, if it unloads)
  • Delt Min (dMin, default 0.0) — smallest allowed timestep; leave at 0.0 on the standard solver (it adapts automatically), but set a real value on the experimental (GPU) solver, which doesn't adapt
Figure 7:
Figure 7: Metafold DTB Sim Config — the run-settings component: Max Resolution, Max Time, Delt Min/Max, Output Interval, Mesh Scale, and Exp (Use Experimental Solver).
  • Delt Max (dMax, default 0.001) — largest allowed timestep; if a stiff material goes numerically unstable (stresses blow up), lowering this is the usual fix
  • Output Interval (Out, default 0.002) — how often a full-field frame is written
  • Mesh Scale (Scale, default 1.0) — applied when exporting your Rhino meshes; leave at 1.0 if you model in millimetres, or use it to convert (e.g. 10.0 for centimetres)
  • Use Experimental Solver (Exp, default false) — required if you're using an experimental material (Orthotropic or Hyperfoam)

Outputs:

  • Config (Cfg), Summary (S)

On resolution: Metafold takes the combined bounding box of every part and samples Max Resolution points along its longest axis; every part is then sampled at a resolution scaled to its own size, so all parts share the same spatial point density. Higher resolution captures geometry more finely but costs much more to run — most simulations need no more than 256, and it's worth aiming for at least 5 sample points across the thinnest feature you actually care about (that's usually what should set your number, not the overall part size). Start low (32–64) to validate your setup, then raise it once everything behaves as expected.

On units: the solver runs in SI internally. Geometry is modeled in millimeters in Rhino and auto-converted to meters via Mesh Scale on MF SimConfig (default 1.0 = millimeters). Material properties (G, K, yield stress, density, etc.) are not converted — you enter them directly in SI yourself (pascals, kg/m³), regardless of Mesh Scale. Time settings are in seconds; piston velocities in mm/s.

Metafold DTB Simulation (one variant, for multi-sim experiments)

The concept: Packages a set of parts, a config, and a name into a single named simulation — the unit you compare against other variants in a multi-simulation experiment.

Inputs:

  • Parts (P) — the sample(s), piston, and any support making up this variant
  • Config (Cfg) — optional; the run settings from MF SimConfig for this variant
  • Name (N) — optional; identifies this variant among the others being compared

Outputs:

  • Simulation (Sim) — the packaged variant; feed into MF Multiple Simulation Experiment
Figure 8:
Figure 8: Metafold DTB Simulation — Parts and Config wired in, with Name set via a Panel reading "generic midsole".

Metafold DTB DTB Experiment (dispatch a single simulation)

The concept: Sends one simulation to Metafold's servers and gives you back a link to watch it run.

Inputs:

  • Client (C) — the authenticated session from MF Auth
  • Parts (P) — the sample(s), piston, and any support to include in this run
  • Project Name (N, default dtb_experiment) — the name shown for this project in the Digital Test Bench
  • Config (Cfg) — optional
  • Open Project (Open, default true) — opens the result in your browser once dispatch completes
Figure 9:
Figure 9: Metafold DTB Experiment — showing "not ready": Client, Parts, Project Name, Config, and Open Project inputs, none yet wired.

Outputs:

  • Project URL (URL) — the link to view this run in the Digital Test Bench
  • Status (S) — reports whether dispatch succeeded or failed
  • Manifest (J) — the actual JSON sent to the server
  • Log (L) — the full dispatch sequence, useful for troubleshooting

Metafold DTB Multiple Simulation Experiment (dispatch a comparison)

The concept: Like MF DTB Experiment, but for running several simulation variants side by side — different materials, meshes, or piston speeds — so you can compare them in one dashboard.

Inputs:

  • Client (C) — the authenticated session from MF Auth
  • Simulations (Sims) — the packaged variants to compare (from MF Simulation) — the first one is treated as the base case
  • Project Name (N) — the name shown for this comparison project in the Digital Test Bench
  • Open Project (Open, default true) — opens the result in your browser once dispatch completes
Figure 10:
Figure 10: Metafold DTB Multiple Simulation Experiment — showing "ready": all four inputs (Client, Simulations, Project Name, Open Project) connected.

Outputs:

  • Project URL (URL) — the link to view this comparison in the Digital Test Bench
  • Status (S) — reports whether dispatch succeeded or failed
  • Manifest (J) — the actual JSON sent to the server
  • Log (L) — the full dispatch sequence, useful for troubleshooting