ace-mini-1 / example.py
ConnorKapoor's picture
Release V003 research weights with verified standalone inference
278e605 verified
Raw History Blame Contribute Delete
852 Bytes
"""Synthetic numerical smoke example; not a validated casting geometry."""
import numpy as np
from inference import AceMini
# A simple 20 mm cube; no training geometry is distributed.
surface=np.array([[x,y,z] for x in [-10,10] for y in [-10,10] for z in [0,20]],dtype=float)
normals=surface-np.array([0,0,10]);normals/=np.linalg.norm(normals,axis=1,keepdims=True)
data={'encoder_surface_mm':surface,'encoder_normals':normals,'points_m':np.array([[0,0,.005],[0,0,.01],[0,0,.015]])}
spec={'geometry':{'attachment_points_mm':[[0,0,0]],'inlet_centers_mm':[[0,0,-12]],'inlet_directions':[[0,0,1]],'gate_count':1,'gate_radius_mm':2},'process':{'inlet_velocity_m_s':.5}}
model=AceMini();outputs=model.predict(spec,data,time_s=1,deformation_phase=.5)
for name,values in outputs.items():
assert np.isfinite(values).all(),name
print(name,values.shape)