Georgia Institute of Technology
Geometry-dependent sintering nonuniformity in radio-frequency additive manufacturing
A computational framework for process compensation
ADVISORS
Carolyn C. Seepersad · Christopher J. Saldaña
SCHOOL
Woodruff School of ME · Georgia Tech
Speaker notes
RFAM selectively fuses a doped PA-12 powder by dielectric heating at 13.56 MHz; the whole doped cross-section melts at once, so build time is nearly layer-count-independent. Open problem this work solves: heating is dictated by part geometry, so parts sinter nonuniformly. Contribution: HEATR (a coupled EM-thermal-sintering solver) plus a simulation-guided compensation framework — dopant grading, exposure scheduling, and a design-for-RFAM capability envelope.
Simulation-guided compensation
Outline
01The process and the problem
RF sintering, and why heating is shape dependent
02Predicting the thermal field
HEATR, a coupled electro-thermal solver
03Does it match reality?
IR imaging, and printed parts vs simulation
04Compensation via dopant grading
(and extended techniques)
Solving for the graded dopant map
053D Implementation
Grading through the full volume of a part
Speaker notes
Five parts: process + geometry problem; HEATR forward model; comparison vs COMSOL and vs IR measurements of real prints; compensation by graded dopant; 3-D extension and design envelope. ~15 min; appendix holds exposure optimizer, numerics, method-selection map, bit-depth, densification and the two-lever comparison for questions.
01
Part one
The process and the problem
How RF additive manufacturing fuses a doped powder, and why the heating mechanism is driven by geometry.
Speaker notes
Part one: how RFAM physically works, the machine we built, and why geometry (not the operator) sets sintering uniformity.
process
Fusing doped powder with RF heating
carbon Black-doped nylon-12
fused between parallel electrodes at 13.56 MHz
FIG. 1 — the RFAM sintering mechanismdopant → RF absorption → coalescence
Speaker notes
PA-12 is nearly RF-transparent; a percolating carbon-black dopant (~25 wt% in the ink) raises dielectric loss so only doped regions absorb power. Dopant is inkjet-patterned per layer like binder jetting, then a capacitive field between parallel electrodes drives volumetric heating. Loss is set by local dopant, so the deposited grayscale pattern IS the process control variable — the basis for everything that follows.
problem
RF heating is geometry driven
- ▹Local heating is dielectric loss × field strength, and the field concentrates at convex corners.
- ▹Sharp regions overheat and scorch while interiors never reach full melt, in the same part.
- ▹A single dopant level cannot fix it because the field pattern is set by the shape itself.
ε″ = how strongly the doped powder absorbs RF (set by dopant)
|E| = local field strength (set by the shape)
FIG. 2 — geometry-dependent field concentration
Speaker notes
Volumetric power Q = 1/2 w e0 e''(c) |E|^2 — dopant sets loss e'', but field magnitude |E| is set by cross-section shape. Convex corners/tips concentrate the field (over-melt, scorch); broad flanks and interiors starve (never fully melt). Under the standardized voltage protocol baseline melt-onset spread runs from 4.9 C on the square to 60 C on the T-shape, with the diamond at 32 C and the equilateral triangle at 41 C. The large coefficient of variation belongs to the HEATING field Q_rf (190-212% across shapes), not to temperature, and it carries no information about which lever will fix a given shape. Uniform doping cannot fix a geometry-imposed field, and hand-tuning does not transfer between shapes.
Nominal run
From field concentration to melt pattern
uniformly doped circle · 500 W
FIG. 3 — EQS potential, field & RF heating
FIG. 4 — resulting temperature, melt fraction & density
Speaker notes
Nominal forward run on a uniformly doped circle. Top (fig 4.5): the EQS potential |V| is smooth, but |E| and the RF heating Qrf concentrate at the doped boundary and on faces perpendicular to the applied field — the field-concentration mechanism that drives all later nonuniformity. Bottom (fig 4.6): the thermal output inherits that asymmetry — a hot, fully melted interior versus cooler, lagging parallel-to-E faces. This is the unmodified response, not a quality target.
02
Part two
Predicting the thermal field
HEATR: a coupled electromagnetic-thermal solver that determines the temperature field and densification regimes for 2D (& 3D) geometries.
Speaker notes
Part two: HEATR, the forward model that predicts, for any cross-section, where it runs hot and cold.
Speaker notes
HEATR = High-frequency Electrothermal Additive Thermal Resolver, an in-house 2-D/2.5-D solver. Import a cross-section, set power and exposure; it returns RF field, transient temperature, melt fraction and relative density in one coupled pass — fast enough (a few hundred seconds) to sit inside an optimization loop.
FIG. 5 — HEATR — interactive solverwalkthrough
tool
HEATR
A short walkthrough of the interactive solver: load a cross-section, set the exposure, and read back the field, temperature, melt fraction, and density in one pass.
model
How the coupled model works
01 · field
∇·[(σ + jωε)∇V] = 0
An RF voltage sets the electric field E inside the part.
02 · heat
Q = ½ ω ε0 ε″eff |E|2
The doped powder's effective loss ε″eff (conduction included) times field strength |E|, squared.
03 · melt
ρ cpapp ∂tT = ∇·(k∇T) + Q − hconv av(T − T∞)
Heat conducts, an apparent heat capacity soaks up the latent heat, and exposed surfaces lose heat convectively.
04 · density
∂ρ/∂t = k(T, φ)(1 − ρ)
Molten powder densifies by viscous-capillary sintering into ρ.
The dopant sets σ(x), so it enters both the field operator ① and the heating ② — which is why grading can redistribute the field, not just the absorption. Solved sequentially each step at 13.56 or 27.12 MHz.
Speaker notes
The coupled model HEATR solves, sequentially on the part grid each outer step. (1) An electroquasistatic potential sets the electric field E inside the part. (2) Volumetric RF heating Q = 1/2 w e0 e''(c) |E|^2: the doped powder's dielectric loss e'' times the local field strength E, squared. (3) That heat conducts, with a DSC-calibrated apparent heat capacity carrying the latent heat of melting. (4) The molten powder densifies by viscous-capillary sintering. The dopant field c(x) enters ONLY through the loss e'', which is what makes it a clean single control handle. All results are solved at 27.12 MHz, the band of the material data. The uniformity metric used throughout is sigma_T, the standard deviation of T_phi90 -- the temperature at which each cell first reaches 90 percent melt.
Validation
Cross-checked against COMSOL
HEATR against a full finite-element model (COMSOL): the heat source, the early transient, and the temporal plateau.
FIG. 6 heat source and part-mean temperatureEQS cross-check
FIG. 7 TEMPORAL PLATEAUheat-loss BC
10%
peak RF heat source (ratio 1.10)
+9.9 °C
T at 5 min — the melt-onset point the metric is read at
0.1 °C
60-min plateau recovered, heat-loss BC on
Speaker notes
HEATR cross-checked against a full COMSOL finite-element model. The EQS solve reproduces COMSOL's peak in-part RF heat source to within about 10 percent (peak ratio 1.10). Part-mean temperature agrees to +9.9 C at 5 minutes and +7.8 C at 10 minutes, and 5 minutes is the melt-onset mark where the uniformity metric sigma_T, which drives every design conclusion here, is read, so the design sits inside the validated window. Late in time the two solvers spread to +89.7 C by 60 minutes under HEATR's insulating wall; with the physically-anchored powder heat-loss boundary condition enabled (h_eff about 2350, a plausible 10.6 mm conduction path, not a curve fit) HEATR recovers COMSOL's 60-minute plateau to within 0.1 C. Honest disclosure, not headline: the absorbed-power match is a normalization, not an independent check; and the spatial field agreement is only moderate (Pearson 0.38, Spearman 0.64), reflecting a single-skin versus double-skin electrode-geometry difference and a coarse grid (6 cells across the part, no grid-convergence study on record). Spatial fidelity is established against IR measurement on the next slides, not here. Why we do not ultimately run with the heat-loss BC: every design conclusion is read in the 6 to 10 minute heating-dominated window, where boundary losses are negligible and the default model already matches COMSOL; the BC is a demonstration that the late-time divergence is a physically-anchored, closable modeling choice, not a solver error, so we do not carry it or its extra calibrated parameter into the design work.
03
Part three
Does it match reality?
A model is only useful if it matches hardware. Before using HEATR to design parts, it is checked against untuned printed parts and IR measurements.
Speaker notes
Part three: does HEATR match hardware? Validation against infrared measurements of real prints, not just another solver.
FIG. 8 — RFAM printer — print routine
machine
RFAM printer hardware
A high-viscosity inkjet head patterns CB ink over a nylon-12 powder bed, fused by a parallel plate RF applicator.
| RF generator | T&C Power AG0613 |
| matching tuner | T&C Power AIT-600R |
| drive frequency | 13.56 MHz |
| dopant | 25 wt% carbon black IPA ink |
Speaker notes
Hardware we built: binder-jet dopant head over a PA-12 bed inside a parallel-plate applicator — T&C AG0613 generator into an AIT-600R tuner at 13.56 MHz. Video is the SFF 2025 print routine. Point: the simulation work is anchored to a real experimental platform, not hypothetical.
Experimental comparison
HEATR tracks the measured heating curve well
FLIR E60 IR vs HEATR 2D · 500 W
unfitted: melt timing within ~9%
FIG. 9 — measured IR frames, t = 0 → 10 min
Fig. 9 — IR thermography data courtesy of
Allison J., RF Additive Manufacturing, PhD thesis, UT Austin, 2020.
FIG. 10 — MEASURED VS HEATR: TRANSIENT, EMISSIVITY BAND
.
Speaker notes
Experimental validation (exp1): FLIR E60 IR vs HEATR 2-D at 500 W, effective conductivity sigma ~0.043 S/m. Measured surface peak (T_max, T_p99) tracks the predicted part maximum across the full 10-min exposure and reaches the 185 C phase change together, The single coupling constant was calibrated once to the end-time peak, so the -4.5 C endpoint gap (sim 209.6 C vs measured 214.1 C at the as-recorded eps 0.95) is that fit's residual, not a prediction. Emissivity uncertainty is one-sided: any lower eps raises the reconstructed measurement (to ~230 C at eps 0.85), so -4.5 C is the minimum discrepancy. The unfitted checks are what validate the model - time to the 185 C phase change within ~9% (+35 s) and the shape of the whole transient. Panels b and c put the measured top view beside a companion HEATR plan-view run on one scale; both carry the corner-X heating signature, and the comparison is like-for-like. Note also that the fitted coupling is specific to this session's drive and part, not a population coupling.
Experimental comparison
The predicted pattern matches the real part
measured IR vs HEATR, square
probe points agree within 6–13 °C
FIG. 11 — MEASURED IR VS SIMULATED FIELD, SQUARE PART
FIG. 12 — fused parts · uniform dopant
6–13 °C
measured vs predicted probe points
Fig. 11 — IR thermography data courtesy of
Allison J., RF Additive Manufacturing, PhD thesis, UT Austin, 2020.
Speaker notes
Spatial comparison, scoped carefully: probe points agree within 6-13 C, and the two fields share the same gross structure - a hot interior bounded by a cool border, coolest on the faces parallel to E - while differing in fine structure, the measurement peaking in a central cross where the model heats the interior more evenly; so this is field-structure consistency with an independent prior measurement - it is not a calibrated agreement and not on its own a validation of HEATR (n=1, measured by other authors). Fused-part photo shows the physical consequence (warp, uneven fusion). The model reproduces WHERE a real part runs hot — what compensation needs, not just an average.
04
Part four
Compensation via dopant grading (and extended techniques)
Solve for a graded dopant map (functionally graded map) that varies the dopant to flatten the temperature field and achieve nominal part geometries.
Speaker notes
Part four: compensation — a cheap field inversion warm-starts a direct adjoint solve for the graded dopant map.
Dopant grading
Grade the dopant to even out the temperature field
FIG. 13 hexagon, uniform dopant (left) vs the graded map (right), end-state temperaturesame part · same power
Speaker notes
The compensation thesis in one before-and-after. Left, a uniform dopant over the hexagon: RF heating runs away at the core and the melt front bulges into a blob well outside the part outline (melt-region fidelity 0.76). Right, a graded carbon-black map at the same total power pulls dopant off the hot core and onto the starved faces, so the melt front becomes the hexagon (fidelity 0.98). The correction is only the deposited grayscale pattern, no hardware change. Two ways to get that graded map follow: a cheap one-shot field inversion as a warm start, then a direct adjoint solve that nails the shape.
Dopant GradinG
Solve for the map, not just field inversion
FIG. 14 ONE FIXED INVERSE GUESS (LEFT) VS PHYSICS SOLVED MAP (RIGHT)
Speaker notes
Step two, the core new result, on a shape where it clearly wins. Left, INVERT: the best stored proportional-inverse mask, one fixed guess, J_phi 69.6 and IoU 0.921 at its 202 second stop. Right, SOLVE: the adjoint optimizer drives a printable 4-bit-per-pixel map through the coupled physics, objective visibly dropping, to J_phi 22.2 and IoU 0.977 at its 448 second stop. Head-to-head the solve wins on both: J down 68 percent, IoU 0.921 to 0.977, melt-region framing, grid 120. Provenance: stored arms HIST_best and A1_4bpp in fgm_solve_campaign/out_lib/hexagon.json, each re-run reproducing its stop, J and IoU exactly. The iterate-sweep segment is process visualization; the captioned numbers are the stored library deliverables. Each method is shown at its own optimal exposure; that per-arm stop is part of each method's recipe, and forcing a common time would contradict the campaign's quoted numbers.
Dopant GradinG
How the optimizer creates the dopant map
FIG. 15 the shape-fidelity solve loopfilter-only
Speaker notes
How the solve actually works, one cheap loop. Step one seeds a dopant map inside the nominal part indicator chi. Step two marches the coupled RF heating and conduction forward to the run's own optimal stop. Step three reads the mismatch, the melt fraction minus chi, squared over the whole bed: red is melt spilled beyond the part, blue is powder left unmelted inside it. Step four is one adjoint backward sweep in time that returns the gradient dJ/ds at every cell for about the cost of a single forward run (measured 0.44 to 2.16 forward-equivalents per gradient). Step five moves the map downhill through the 1.0 mm physical filter so it stays smooth and printable, and the loop repeats. This is the same filter-only solve behind the previous slide's animation and the census: no projection stage, and the objective is melt-region fidelity, not density. It has two exits when J stops falling: the map quantizes to a 4-bit-per-pixel production raster re-run through the real forward model, and the heat stops at the optimal stop t*, the run's own argmin of J. J plateaus above zero by design, the melted region is matched to the outline, not driven to a perfect solve.
Dopant GradinG| Solved vs inverted
The solved map improves nearly every geometry
FIG. 16 shape fidelity (left) and thermal objective J vs the best stored mask (right), per geometry
Speaker notes
The result across the whole shape library. Each row is a geometry; the left panel is shape fidelity (intersection over union of the melted region with the nominal part, higher is better), the right panel is the thermal objective J relative to the best dopant map the campaign had ever stored by any method. The solved, printable, single-pass map beats that best stored inverse mask on 13 of 18 shapes for shape fidelity and 13 of 18 for the thermal objective, and reaches a melt footprint within 5 percent of the nominal part on 7 of 18. The wins are large on the convex and moderately concave shapes: circle plus 72 percent on J with fidelity going 0.95 to 0.99, hexagon plus 68 percent, ellipse plus 81, trapezoid plus 78. Honesty for questions: on the square and rounded rectangle the stored inverse mask was already essentially solved, so the solve does not beat it there; and a few tight-notch reentrant shapes, the cross and the six-point star, are not rescued by dopant alone and need the rotation lever. Quoting box for questions: IoU is at grid 120 and arms are not dose-matched; 13 of 18 is against the deployable best-stored oracle (16 of 18 vs the standardized mask, and 17 of 18 with the model-only permittivity channel, which is not yet material-calibrated). Headline-safe single wins: square 1.0000 filter-only, circle 0.9616 at the held-out grid, cross 0.9829 with the solved map plus its asymmetric dwell program.
Rotation
Rotation fixes uneven RF heating
FIG. 17 RF HEATING: STATIC, CONTINUOUS ROTATION, 90-DEGREE INDEXuniform dopant
Speaker notes
Why rotation is needed. Under uniform dopant the part-frame RF heating kernel of the cross is biased along the electrode axis: the vertical limbs heat and the horizontal limbs starve (melt-region fidelity 0.55). Continuous rotation smears this into an annular average, and 90-degree indexing rebuilds the four-fold pattern, lifting fidelity to 0.85-0.87. Rotation averages the field so no limb sits permanently in shadow. Scoping: this is the 2-D cross-section engine; the 3-D rotation feature inherits the same schema with dopant co-rotation by construction.
Dwell schedule
Dwell and rotation scheduling flattens temperature field on complex geometries
FIG. 18 cross under its solved asymmetric dwell programJ 34.2 · IoU 0.985
No correction

Speaker notes
The dwell schedule itself is solved, the same way the dopant map is. The cross marches under an optimized asymmetric turntable dwell program (indexing with tuned hold times at 0/90/180/270 degrees). Temperature and relative density end even across all four limbs, with the melt front matching the nominal part: thermal objective 34.2 and fidelity 0.985 at the solver-recommended stop of 471.5 seconds. Constant RF power throughout. Scoping: 2-D cross-section engine; the 3-D rotation feature inherits this schedule schema with dopant co-rotation by construction. Context inset: the same cross with NO correction, static orientation and uniform dopant, sits at IoU 0.55 (J 463) at its own stop; the solved spin schedule plus solved dopant map lifts it to about 0.98. Both are grid-120 numbers, the solve and deployment grid; the ranking, static loses badly and the co-solve wins, holds at every grid tested.
Sequential dwell
Asymmetric parts can be scheduled to melt "limb-by-limb"
FIG. 19 L-SHAPE UNDER SEQUENTIAL DWELL PROGRAM: FOOT FIRST, THEN UPRIGHT
Speaker notes
A hard, asymmetric part shows the schedule is path-dependent. The L cannot melt in one exposure: held at 90 degrees for 465 seconds the horizontal foot melts while the vertical upright stays cold, then a quarter turn to 0 degrees grows the upright while the melted foot holds. That two-phase program is itself a solved deliverable. Honest scope: even this best-on-record sequential program reaches only melt-region fidelity 0.72 (J_phi 276) at its 594 second stop; the L is a frontier case, not a clean solve like the cross. It shows both the reach of scheduled dwell and where the method still struggles. 2-D cross-section engine, stored campaign arm.
05
Part five
3D Implementation
The same solver runs on a voxel grid, so the field, melt, and shrinkage can be graded through the full volume of a part.
Speaker notes
Part five: extend the same solver to 3-D and characterize what can actually be built.
3D Implementation
How the 3-D solve works
FIG. 20 the 3-D solve loop: seed, march, mismatch, adjoint sweep, filter, repeat
Speaker notes
How the 3-D solve works, the same loop as 2-D, one step bigger. (1) Seed a uniform dopant field on every design cell inside the part. (2) Forward-march the coupled RF-heating and conduction model to the run's own stop and read the melt fraction. (3) Read the mismatch, melt fraction minus the target shape, through the whole volume, every cell, not a slice. (4) One adjoint backward sweep returns the gradient dJ/ds at all 24442 design cells at once, X, Y and Z together, never per layer, for about the cost of one forward run. (5) Push the gradient through the 1.0 mm filter and move the whole 3-D map downhill together, then repeat. J falls across the 12 gradient evaluations and is still descending at the budget, so the reported 58 percent gain is a lower bound. Reading the figure honestly: the diverging colours in stages 3 and 4 are centred on the background, so brightness means a cell drives the update, not that it is matched, and the stage-4 colour saturates at the 75th percentile of the gradient magnitude, so colours are relative leverage, not absolute values. Filter-only arm; the steady adjoint is proven in the D1 spike and the transient adjoint is finite-difference gated in Phase B; simulation-only; stage 4 is a real recomputed gradient whose forward reproduces the stored objective to the last bit.
3D Implementation
Uniform densification vs. solved volumetric dopant map
FIG. 21 PYRAMID MELT FRACTION: UNIFORM VS SOLVEMEAN MELT FRACTION 0.39 VS 0.68
Speaker notes
The 3-D solve made visceral, and the correction to how we describe it: this is one 3-D solve, not a stack of independent 2-D layers. Two quarter-cut pyramids, uniform dopant versus the solve, colored by the real 3-D melt fraction on the full solve mesh of 18172 nodes; the 96-cubed sampling was checked against the FEM scorer, 0.38/0.67 on the grid versus 0.39/0.68 from the FEM, a weighting difference only with zero missed in-part points. Each arm is read at its own envelope stop, 418 s uniform and 639 s for the solve, each at its own optimum. The solve does not only melt more: it pushes melt out to the outer slant faces at mid-height, where the uniform arm leaves a cold skin. Mean melt fraction rises 0.39 to 0.68 and melt IoU 0.185 to 0.380. This is the filter-only arm of the 3-D adjoint solve, budget-limited and still descending, simulation-only; it does not carry a formal solved or validated label. Rendering note: the fine horizontal banding on the faces is the marching-cubes staircase from the 96-cubed sampling, not physics.
3D Implementation
Solving the dopant maps through X, Y, and Z
FIG. 22 PYRAMID: SOLVED DOPANT THROUGH Z (L); UNIFORM VS SOLVED MELT (R)MELT FRACTION V. IDEAL GEOMETRY −58%
Speaker notes
The frontier result: grading the dopant as a true 3-D field, through the build height, not layer by layer. Left, the solved dopant map on four z-slabs of the pyramid: it EMPTIES the base to mean saturation 0.63 and saturates to 1.00 higher up, and the profile rises from base to apex. This is the OPPOSITE of the hand-built grading law, which loaded the base and failed to beat uniform; the optimizer discovered that intuition grades the wrong direction. Right, uniform versus solved section through the pyramid centre: on the same mesh the solve lifts mean melt fraction 0.39 to 0.68 (x1.72), roughly doubles melt-region IoU 0.185 to 0.380 (x2.06), pulls the melt front in 3.06 to 1.63 mm (-47%), and halves the objective (-58%); the cross-mesh gain is -54%. Honest gate state: the smoothing-robustness gate passes (1.5% change against a 10% band) and the mesh hold-out passes all five shape metrics, but it FAILS the objective J on hold-out from stop-time sensitivity at the apex corner, so this map does NOT carry the formal solved label; that apex question is escalated to the COMSOL anchor. The gains stand on both meshes, the map transfer conserved dopant to 0.041%, and on shape metrics the solved arm is more mesh-stable than uniform. Budget-limited and still descending, so these are lower bounds; simulation-only, no physical validation.
3D Implementation
Same solving method applied to a cube
FIG. 23 CUBE: MELTED BODY (AMBER) VS NOMINAL PART (CYAN)
Speaker notes
The cube: the part that would form, with and without correction, each arm read at its own envelope stop. No correction, uniform dopant: the melt forms 64 percent of the part, the baseline. The hand-built grading law makes it WORSE, 58 percent and +50 percent on the objective J; intuition grades the wrong way. The solve, filter-only arm, fills 75 percent and cuts the objective 46 percent. Amber is melted material inside the part, red is melt outside it, cyan wireframe is the part we asked for; the bottom row is a vertical cut with the no-correction melt boundary repeated as a white dashed line, so amber beyond the dash is what the correction added. Honesty: the melt body is phi at or above 0.9 on a 96-cube render grid and the JSON out-of-part number integrates continuous phi, a different quantity, so no arm is a zero-spill claim; the surface is lightly display-smoothed and no metric uses the smoothed field; filter-only arm, budget-limited and still descending, simulation-only.
3D Implementation
Cube dopant map, solved through Z
FIG. 24 CUBE: SOLVED DOPANT THROUGH Z
Speaker notes
What the solve did to the cube dopant map, 24042 design cells. The map pulls dopant off the faces and fills the interior through the build height. Against uniform it lifts mean melt fraction 0.64 to 0.75 (x1.18), melt-region IoU 0.600 to 0.738 (x1.23), pulls the melt front in 1.94 to 1.20 mm (-38 percent), cuts the below-floor volume 31 percent, and drops the objective 46 percent. Filter-only arm, budget-limited and still descending, simulation-only.
Acknowledgements
NAZDAR Ink Technologies
Saminu Magami, PhD, CChem · Martin Burns
NSF Graduate Research Fellowship
Grant No. DGE-2039655
George W. Woodruff School of Mechanical Engineering
Dr. Carolyn Seepersad · Dr. Chris Saldaña · Keenan Vaughn
Prior RFAM work
Dr. John Pearce · Jared Allison, PhD
Speaker notes
Acknowledgements. NAZDAR Ink Technologies -- Saminu Magami (UK R&D Manager) and Martin Burns (Market Manager, OEM Inks) for the doped ink chemistry. NSF Graduate Research Fellowship, grant DGE-2039655. Georgia Tech -- advisors Carolyn Seepersad and Chris Saldana, and Keenan Vaughn. University of Texas at Austin -- John Pearce and Jared Allison, whose prior RFAM work this builds on.
Summary
HEATR predicts the field and compensates for it
›Predict: HEATR, a coupled EQS → thermal → densification solver, resolves geometry-driven melt nonuniformity: 10% peak-heat-source agreement with COMSOL, and it tracks the measured IR thermography data.
›Compensate: an adjoint solve grades a printable 4-bpp dopant map so the melt matches the nominal shape.
›Generalize: the same solve runs through X, Y and Z in 3D and drives a solved rotation/dwell lever.
Matt McCoy
matthew.mccoy@gatech.edu www.matthewmccoy.info
Highlights across the talk
The problem


Validation

The solve

SHAPE LIBRARY

ROTATION LEVERS

3D EXTENSION
Speaker notes
Three takeaways, and a highlight from each part of the talk. Predict: HEATR is a coupled electroquasistatic, thermal and densification solver; it resolves geometry-driven melt nonuniformity up front, agrees with COMSOL to about 10 percent on the peak in-part heat source, and tracks the measured infrared heating curve of real printed parts to +9.9 C at the 5-minute melt-onset mark. Compensate: an adjoint solve, warm-started by a one-shot field inversion, grades a printable 4-bit-per-pixel dopant map so the melted region matches the nominal shape, improving 13 of 18 shapes in a single pass with no hardware change. Generalize: the same solve runs as one 3-D field through X, Y and Z, and drives a solved rotation-and-dwell schedule for the shapes dopant alone cannot fix; a capability envelope bounds what RFAM can build. All simulation results; the 3-D solve is budget-limited and still descending.
Speaker notes
Appendix / backup slides for Q&A.
Method selection
Geometry classification (inverted maps)
FIG. 25 — graded maps · 12 geometries4 bpp
Speaker notes
Geometry taxonomy / decision map, now backed by the standardized 19-shape sweep: 12 of 19 improve, 1 neutral, 6 harmful (sharp/re-entrant), L-shape never melts. Convex and smooth (circle, ellipse, hexagon, octagon): grading alone flattens them. Square/rectangle: already uniform, grading neutral. Sharp tips and re-entrant corners (diamond, triangle, L, star): field-starved, dopant not enough, hardware required.
FIG. 26 — full HEATR solve · circleconvex · after grading (iter 9)
Convex — resolvable
| hottest point | 208 °C |
| coolest face | 183 °C |
| mean density ρ | 0.807 |
| exposure | 6 min |
| generator power | 500 W |
The divergent integral iterate-9 upper bound holds this convex part to a 25 °C gap. The deployable single step is 7.1 °C, not this.
Speaker notes
IMPORTANT: this figure is the FGM-compensated converged iterate (circle INTEGRAL m007 n30 iter9), not an uncompensated baseline. As shown it holds a ~25 C hot-to-cold gap (208 C hotspot vs 183 C cool face), mean density 0.807. The uncompensated circle at the same power is far worse: 267.1 C down to 178.3 C, an 88.8 C gap at density 0.925. Quote the 89 C figure when motivating the problem and the 25 C figure as the compensated result; do not present the compensated run as the baseline.
FIG. 27 — full HEATR solve · GT-logore-entrant · after grading (iter 1)
Re-entrant — a limit case
| hottest point | 224 °C |
| coolest face | 143 °C |
| mean density ρ | 0.611 |
| exposure | 4 min |
| generator power | 500 W |
Even after grading, the concave notch stays cold at an 81 °C gap. Compensation narrows it; geometry sets a floor it can't cross.
Speaker notes
IMPORTANT: these numbers are FGM iterate 1, not the uncompensated run. Even after grading the concave notch sits in a field shadow and stays cold: 81 C spread (223.8 down to 142.8 C), mean density 0.61. The uncompensated GT-logo is 304.3 down to 135.8 C, a 168.5 C spread at density 0.627 — so grading roughly halves the spread and still cannot close it, because the field does not reach the recess. Motivates characterizing the hard geometric limits.
Rotation hardware
Two ways to rotate without losing coupling
an air gap would defeat capacitive coupling
switch the field electronically, or immerse in a dielectric bath
FIG. 28 — silicone-oil immersion, rotating buildconceptual
FIG. 29 — switchable electrode arrayno moving part
Speaker notes
Rotating a part in an air gap would break the capacitive coupling RFAM depends on. Two realizations avoid that. (1) A switchable / commutated electrode array electronically re-aims the field across orientations with no moving part. (2) Immerse the build cylinder in a low-loss silicone-oil dielectric bath: the liquid fills the would-be air gap and maintains capacitive coupling as the cylinder physically rotates, giving the rotational field averaging an air gap would otherwise defeat (the subject of a pending patent disclosure).
FIG. 30 — HEATR validation report378 s run
Numerics & conservation
Checked on every run
< 1.5%
energy balance closes to ≈0% on clean runs
0 cells
clipped — adaptive ΔT/step stays sub-degree
tracked
uniformity index and densification kinetics logged live
Speaker notes
Backup: solver credibility — cumulative energy balance closes to about 0% of deposited energy on a clean run (-4.6 J/m), while a deliberately forced non-conserving step drives the same ledger to 22.2%, so the diagnostic is a working guard rather than a decorative one, adaptive time-stepping holds sub-degree dT/step with zero clipped cells, and uniformity index + densification kinetics are logged live each run.
FIG. 31 — exposure-time optimizermelt criterion vs ceiling
Exposure timing
Temporal optimizer
The dopant map fixes where heat lands; exposure time fixes how long. HEATR reports where the melt criterion and the scorch ceiling actually fall — on this hexagon they conflict.
318 s
melt criterion φ ≥ 0.90
+16 °C
ceiling exceeded at the melt stop
Speaker notes
Backup: solver credibility — cumulative energy balance closes to about 0% of deposited energy on a clean run (-4.6 J/m), while a deliberately forced non-conserving step drives the same ledger to 22.2%, so the diagnostic is a working guard rather than a decorative one, adaptive time-stepping holds sub-degree dT/step with zero clipped cells, and uniformity index + densification kinetics are logged live each run.
Inversion floor
The update rule sets the floor
diagonal proxy is cheap and lands near the floor in one step
integral squeezes further, conditionally stable
Single-step inversion — used
Each cell's dopant chiefly sets its own heating (Q ∝ ε″|E|²), so the sensitivity is dominated by its diagonal — one proportional step lands near the achievable floor, though the true response is non-local.
Density top-opt / OC
Assumes a monotone compliance-like objective; here the fixed point drifts, so proportional iteration climbs back to a ~16 °C plateau; OC-TO itself bottoms at 10.3 °C — one step still beats 25 OC iterations.
Integral controller
Adds loop gain to break the fixed point (7.0 → 4.4 °C), but is only conditionally stable — diverges if over-iterated.
FIG. 32 — σT convergence: single-step vs integral vs the ceilingfgm_iterate · circle / hexagon / diamond
Speaker notes
Defensible mechanism: because Q ∝ ε″|E|² and each cell's dopant chiefly sets its own loss, the map→temperature sensitivity is dominated by its diagonal, so a single proportional inversion behaves like one diagonally-preconditioned step and lands near the achievable floor at iteration 1. Say dominated-by-the-diagonal, not near-diagonal: the true sensitivity is non-local, since changing conductivity at one point alters Q_rf everywhere through the elliptic EQS problem, and that non-locality is what caps the iterative methods (circle 19.3→7.1 °C). Density topology-optimization / optimality-criteria updates assume a monotone self-adjoint compliance-type objective; here the fixed point drifts, so iterating past step 1 climbs back to a ~16 °C ceiling (one step beats 25 OC iterations). An integral accumulating update injects loop gain that breaks the fixed point and reaches 4.4 °C at iter 9, but is only conditionally stable and diverges if over-iterated. Policy: single-step inversion, plus bounded integral action for convex shapes.
FIG. 33 — method by geometrysolidity vs baseline concentration
Decision rule
Which method each part needs
FGM alone — no reentrant shadowing, low concentration.
FGM + schedule — high concentration but still convex.
Limit — solidity < 0.90 (re-entrant); needs hardware.
The solidity = 0.90 reentrancy line predicts, up front, whether dopant grading can succeed.
Speaker notes
Backup: method-selection rule plotting solidity vs baseline heating concentration for every geometry. Solidity >=0.90, low concentration -> FGM alone; high concentration but convex -> FGM + exposure schedule; solidity <0.90 (re-entrant) -> beyond dopant, needs hardware. The discriminator is reentrant shadowing plus heating concentration, not solidity alone: the open-notch six-point star grades fine at solidity 0.59, while the diamond's field-aligned tips make it the harder case at 0.97.
Printability
Map rasterization
- ▹The continuous dopant field is quantized to the binder printer's discrete ink levels.
- ▹At 2 bits per pixel the gradient banks into visible steps; at 4 bpp (16 levels) it stays smooth.
- ▹Uniformity gains hold at the resolution the hardware actually deposits.
FIG. 34 — RIP raster · circle dopant map2 vs 4 bpp
Speaker notes
Backup: printability — the continuous dopant field must survive the RIP raster. At 2 bpp the gradient banks into visible steps; at 4 bpp (16 levels) it stays smooth, and the uniformity gains hold at the resolution the hardware actually deposits.
Design for RFAM · minimum clearance
Features fuse if they sit too close
two 8 mm features, fixed voltage
melt bridges the gap below ~2 mm
Speaker notes
Quick: minimum clearance. Two 8 mm features under fixed voltage — a 1.5 mm gap bridges into one fused region, 2.0 mm stays resolved (1.75 mm still bridges), so the melt-bridging threshold is ~2 mm. Sharper limit than the ~21 mm line-pair thermal-contrast pitch.
Design for RFAM · feature orientation
Thin walls depend on orientation
same 1.5 mm wall, three angles
coupling rate spans 60× with orientation
Speaker notes
Quick: the same 1.5 mm wall in three orientations all melt, but RF coupling rate spans 60x — parallel ~8 s, 45 deg ~26.5 s, perpendicular ~481 s. Orientation sets heating RATE, not pass/fail; a build-planning lever (perpendicular timing carries a mesh caveat).
Per-voxel grading
Real parts vary along the build axis
cone, sphere, dumbbell vs cylinder control
a single planar dopant map cannot describe z-variation
FIG. 35 — heatr3d study geometries — cross-section area vs build height64³
Speaker notes
The heatr3d study parts are fully three-dimensional, not 2-D extrusions. Top: isometric renders of a cone, sphere and dumbbell, with a cylinder as the true-extrusion control. Bottom: cross-section area versus build height z varies for the cone (monotonic taper), sphere (central bulge) and dumbbell (two lobes joined by a pinched neck), and is constant only for the cylinder. That build-axis variation is exactly what a single planar dopant map cannot describe, which is why compensation has to become per-voxel in 3-D.
Sintering in 3-D
Densification sets shrinkage
sphere, true-3D 64³
melt-FGM σρ −20% · density-FGM overcorrects
FIG. 36 — z-compaction, radial density, warpage by strategy30% z-shrink
Speaker notes
Backup: densification and shrinkage in true 3-D on a sphere — ~30% z-compaction reduces layer count 297 -> 207. Melt-FGM flattens the radial density profile (sigma_rho -20%); a density-targeted FGM overcorrects the cold rim, so melt-fraction targeting is preferred.
FIG. 37 — dopant grading vs geometry pre-warpsquare · cylinder
Two levers
Thermal vs dimensional error
Dopant grading lowers the thermal spread σT; IoU is essentially unchanged (0.727 → 0.672).
Geometry pre-warp lands the as-built shape on the CAD target; σT is unchanged.
Together they improve both — uniformity and accuracy are separable.
Speaker notes
Backup: two independent levers. Dopant grading lowers thermal spread sigma_T (shape unchanged); geometry pre-warp lands the as-built shape on the CAD target (higher IoU, sigma_T unchanged). Separable problems — thermal uniformity vs dimensional accuracy — and together they improve both.
Experimental basis
The archive, and how repeatable it is
174 recovered files · one FLIR E60 · 2018–2020
ten same-session rectangle runs bound the prior
FIG. 38 — recovered thermography, representative geometriesFLIR E60
5.7%
CV · peak temperature
+22.6 s
per run · melt-time drift
Within a session, run-to-run variation is a monotone drift, not noise: time to melt climbs 268 → 477 s across ten identical rectangle prints.
Peak temperature is far more repeatable than timing — which is why every comparison here is made at a matched thermal state, not a matched clock time.
Speaker notes
The experimental basis and how repeatable it is. The archive is 174 recovered files from the 2018-2020 campaigns on one FLIR E60, spanning square, rectangle, diamond, ring, star, triangle and logo geometries plus a 2019 material study; all decoded with a purpose-built parser and catalogued. The one large same-geometry, same-session set is ten rectangle runs, and it sets the repeatability prior: run-to-run variation in time-to-melt is not noise but a monotone within-session drift, 268 to 477 s across the ten runs at about +22.6 s per run, while peak temperature stays tight at 5.7% CV. That is why every comparison in this work is made at a matched thermal state rather than a matched clock time, and it gives 24% CV on timing, 5.7% on peak temperature and 12-18% on sigma_T. These ten runs are not replicates - no notes, undocumented settings, monotone drift - so they bound the run-to-run spread from above rather than estimating it.
Quantified
Residual deviation, shape by shape
uirms from part mean · convex → concave
hatched = fails the sinter gate
FIG. 39 — FGM-compensated in-part temperature deviationbest result per geometry
Speaker notes
Superseded headline: the standardized 19-shape sweep (HEATR 2-D, voltage drive, both read states) is the result to quote now - one-shot proportional grading improves 12 of 19 cross-sections, is neutral on 1, and is HARMFUL on 6 (the sharp and re-entrant ones); the L-shape's FGM arm never reaches melt within 750 s, so its benefit is undefined rather than negative. A power-matched control shows that for 11 of those 12 the gain is spatial redistribution rather than extra dose, the square being the lone dose-driven exception. Residual in-part temperature deviation (ui_rms about the part mean) after best FGM, ordered convex -> concave; hatched entries fail the sinter gate. Achievable uniformity is predictable from a shape's convexity/solidity.
Appendix · HEATR as a system
System architecture & data flow
CONFIG used_config.yaml → geometry mask · dopant map c(x,y) · electric{frequency_hz, generator_power_w} · thermal{n_steps} · PA-12 + carbon-black model
↓
HEATR CORE module heatr / heatr3d → coupled kernels: EQS field → Q_rf → transient conduction (apparent Cp) → melt φ → densification · backends: 2.5-D extruded | true-3-D voxel
↓
STUDY DRIVER outer loop wraps the forward solve → fgm_iterate · turntable · placement_opt · orientation_opt · shell_sweep · antennae_calibrate
↓
RUN ARTIFACTS runs/<shape>/<study>/<family>/<run_id>/ → summary.json · used_config.yaml · *_fields.npz · saturation_map.png
↓
MANIFEST + VENDOR build_run_manifest.py walks ~1600 runs → heatr_run_manifest.csv + copies featured-run essentials → data/runs/ (git)
↓
FIGURE BUILDERS → CONSUMERS scripts/*.py + external_builders/*.py read vendored CSV/NPZ → PDF/PNG → LaTeX dissertation & this deck
Speaker notes
Systems architecture and data flow. HEATR is a batch simulation tool, not a one-off script. A run is fully specified by used_config.yaml (geometry mask, dopant/carbon-black saturation map c(x,y), electric block with drive frequency and generator power, thermal block with step count, material model). The core module (heatr / heatr3d) runs the coupled EQS -> heating -> conduction -> melt -> densify kernels and writes a self-describing run directory. build_run_manifest.py walks the whole archive (~1600 runs indexed in the committed manifest), emits a manifest CSV, and vendors the essentials of every cited run into git so any figure regenerates from committed data. Figure builders (scripts/ and external_builders/) read that vendored data and emit the PDFs/PNGs consumed by the dissertation and this deck.
Appendix · core
Solver core & study harness
heatr3d core — kernel stack
grid / mesh builder
EQS assemble + sparse solve
Q_rf = ½ωε₀ε″|E|² coupler
implicit thermal integrator
melt-fraction φ tracker (DSC Cp)
viscous-capillary densify
backends: 2.5-D extruded · 3-D voxel
study drivers — each an outer loop over forward solves
| fgm_iterate | dopant map | mode{prop,integral,hybrid}, m, n, bpp |
| turntable | part rotation | n_rot, angle step |
| placement_opt | part position | bed search |
| orientation_opt | build angle | θ sweep |
| shell_sweep | exposure/shell | schedule |
| antennae_calibrate | electrode coupling | field cal. |
FGM policy inside fgm_iterate: s = 0.5 + m(0.5−T̃), mn = m₀γn, γ=0.7
Speaker notes
Solver core and study harness. The core exposes a forward solve on a structured grid with two backends: a fast 2.5-D extruded solver and a true-3-D voxel solver (heatr3d). Every 'study' is an outer loop that wraps that forward solve: fgm_iterate drives the dopant-map optimizer (modes proportional / integral / hybrid, gain m, iteration count n, quantization 2 or 4 bpp); turntable averages the field over part rotations; placement and orientation optimizers search part pose; shell_sweep and antennae_calibrate tune exposure and electrode coupling. The FGM update law s = 0.5 + m (0.5 - T_tilde) with decayed gain m_n = m0 gamma^n is one plug-in policy inside fgm_iterate.
Appendix · provenance
Run archive & reproducibility
runs/<shape>/<study>/<family>/<run_id>/
├ summary.json metrics
├ used_config.yaml exact inputs
├ *_fields.npz V,E,Q,T,φ,ρ
└ saturation.png dopant map
summary.json → ui_rms_part_final · mean/max_T_part_final_c · mean_rho_rel_part_final · frac_part_ge_melt_ref · freq_hz · generator_power_w · n_steps
Archive
~1600 runs indexed in one manifest CSV; every plot regenerable from committed data.
Figure → run binding
FEATURED map ties each figure to a run_id, e.g.
fig:gtlogo ← gt_logo/fgm_iterate/gtlogo_run_20260507_v2 iter1
Cross-validation
COMSOL check is its own artifact set: staged EQS fields + thermal metrics, vendored alongside.
Speaker notes
Run archive, provenance, reproducibility. Every run writes a directory keyed shape/study/family/run_id containing summary.json (the scalar metrics), used_config.yaml (exact inputs), field arrays (.npz), and the deposited saturation map. The manifest indexes all ~1600 runs; a FEATURED map binds each dissertation/deck figure to a specific run_id (e.g. the GT-logo figure comes from gt_logo/fgm_iterate/gtlogo_run_20260507_v2 iter 1), and the essentials of those runs are copied into version control so the results are regenerable offline. COMSOL cross-validation is its own artifact set (staged EQS fields + thermal metrics).
Appendix · numerics
Discretization & conservation
Discretization
Structured grid, n cells/axis. EQS = sparse complex-potential solve, E=−∇V. Conduction = implicit stepping over thermal.n_steps; apparent cp(T) carries latent heat across the melt window.
Stop criterion
Melt fraction φ integrated per cell; Tφ90 is its 90% crossing. Exposure stops at mean melt φ̄ = 0.90 → dose tφ90.
Mesh convergence
σT descending toward the 2-D reference 19.30 °C (n=64/80/96 → 26.3/22.6/20.8, still falling). Dose tφ90 mesh-robust: 444.8 → 405.6 s over 3.4× cells.
Conservation & validation
Energy balance closes to ≈0% on clean runs (−4.6 J/m; 22.2% under a deliberately forced non-conserving step); sub-degree adaptive ΔT/step; COMSOL peak Qrf within 10%, +10 °C at 5 min.
Speaker notes
Numerics and discretization. EQS is a sparse complex-potential solve on the structured grid (E = -grad V); conduction uses implicit time stepping over thermal.n_steps with a DSC apparent heat capacity that absorbs the latent heat across the melt window; melt fraction phi is integrated per cell and T_phi90 is its 90% crossing; exposures stop at mean melt phi-bar = 0.90. Mesh refinement drives sigma_T toward the 2-D circle reference 19.30 C (n=64/80/96 give 26.3/22.6/20.8 C) but it is STILL DESCENDING at the finest mesh - a convergent approach, not a demonstrated plateau, so sigma_T is mesh-conditional under a sharp material boundary. The integral dose t_phi90 is the mesh-robust quantity (444.8 -> 405.6 s across a 3.4x cell change). Conservation: energy-balance residual under 1.5%, sub-degree adaptive steps, COMSOL peak Q_rf within 10% and +10 C at 5 min.
Appendix · archive statistics
Why the archive cannot test whether grading works
FIG. 40 — ungraded vs graded spread, all square runsp = 0.56
Only one shape has a before
Every geometry except the square was tuned in COMSOL and then printed only in its graded form. Ungraded/graded counts: ring 0/14, rectangle 0/10, longhorn 0/7, diamond 0/4. For those shapes the comparison cannot be made from this data.
On the square, the effect vanishes
Widened from one pair to all 18 square recordings at a matched pre-melt 120 °C: ungraded 11.8 ± 3.4 °C vs graded 14.6 ± 8.3 °C. The graded parts are slightly worse, and the gap sits well inside run-to-run noise (p = 0.56).
Too few runs to have seen it
With 11 ungraded and 4 graded runs this test had only about a 45% chance of catching even the 43% improvement first claimed. It says the archive cannot answer the question — not that grading fails.
The calibration is unaffected
The heating-curve fit uses one run against its own trace and never compares two parts, so this null does not touch it. What it does set is a requirement: the planned prints must be paired, same-session, same-geometry.
Speaker notes
Appendix. The plain question is: has anyone measured that dopant grading actually works? The archive cannot answer it, for one structural reason and one statistical one, and both are worth stating plainly. Structural: only the square has an ungraded counterpart at all. Every other geometry was tuned in COMSOL first and printed only in its graded form, so the crosstab reads 0 ungraded against 14 graded for the ring, 0 of 10 for the rectangle, 0 of 7 for the longhorn, 0 of 4 for the diamond. For those shapes the comparison cannot be made from this data, now or ever. Statistical: on the square, the effect does not survive widening past the original single pair. All 18 usable square recordings, redecoded under one frozen-ROI protocol and compared at a matched pre-melt part-mean of 120 C, give ungraded 11.8 plus or minus 3.4 C against graded 14.6 plus or minus 8.3 C - the graded arm is slightly worse, and the gap is well inside run-to-run noise at p = 0.56. Be careful how you say the last part: with 11 ungraded and 4 graded runs the comparison had only about a 45 percent chance at this 120 C state (about 30 percent at the 135 C state where the claim was originally made) of catching even the 43 percent improvement originally claimed, so this is the archive failing to answer, not evidence that grading fails. The heating-curve calibration shown earlier is untouched, because it fits one run against that run's own trace and never compares two parts. The practical consequence is a design requirement for the planned experiments: graded and ungraded parts must be printed in the same session, on the same geometry, and analyzed as pairs.