import jax import jax.numpy as jnp from physics_engine import kepler_dynamics, rk4_step, energy from model import OrbitMLP from train import ( generate_trajectories, create_train_state, make_train_step, make_predict_trajectory, ) print("Imports OK") rng = jax.random.PRNGKey(0) states, targets = generate_trajectories(rng, num_trajs=4, num_steps=10) print(f"States: {states.shape}, Targets: {targets.shape}") model = OrbitMLP() ts = create_train_state(rng, model) train_step = make_train_step(model) s2, m = train_step(ts, jnp.zeros((2, 4)), jnp.zeros((2, 4))) print(f"Train step OK. Loss={float(m['loss']):.4f}") predict = make_predict_trajectory(model) traj = predict(ts.params, jnp.ones(4), 10) print(f"Predict trajectory shape: {traj.shape}") print("All OK")