Guillermo Corpas

Physicist and software engineer building deterministic low-level systems, mathematical models, and machine learning runtimes from first principles.

Projects

A standalone neural network inference runtime implemented in pure C11 without BLAS, external matrix libraries, or dynamic memory in the forward pass. Trained weights are serialized from PyTorch into a custom binary format (.cinf) and dispatched across a preallocated linear arena.

CORE CONSTRAINTS Zero malloc/free during forward pass · Static memory arena initialization
SUPPORTED LAYERS Linear, Conv2D, MaxPool2D, Flatten, ReLU, Sigmoid, numerically stable Softmax
VERIFICATION GATE Parity testing against PyTorch: < 1e-5 absolute tolerance on floating-point ops; bit-exact on pooling and flatten
Dataflow & Memory Layout Expand
OFFLINE PYTHON PyTorch Model export.py serialization model.cinf (binary) C11 RUNTIME CORE Static Arena cinf_arena_t Zero heap during fwd Fixed buffer footprint Dispatch Loop cinf_forward() Conv2D · Linear MaxPool · Softmax VERIFICATION PyTorch Parity Delta < 1e-5 abs ✓ All Tests Pass
$ make test
==> test_linear       fully connected forward pass        [tol 1e-5]: OK
==> test_conv2d       2D convolution forward pass         [tol 1e-5]: OK
==> test_maxpool2d    2D spatial max pooling              [bit-exact]: OK
==> test_flatten      tensor reshape                      [bit-exact]: OK
==> test_relu         rectified linear activation         [tol 1e-6]: OK
==> test_softmax      numerically stabilized probabilities[tol 1e-6]: OK
==> test_end_to_end   full MLP classification pipeline    [tol 1e-5]: OK
==> test_no_alloc_forward: verified 0 bytes heap allocated during inference
ALL TESTS PASSED (8/8)

A Physics-Informed Neural Network solving the one-dimensional non-linear heat diffusion equation (∂u/∂t = α ∂²u/∂x²). Trained completely unsupervised without simulation ground truth by optimizing the partial differential equation residual directly through PyTorch automatic differentiation.

DOMAIN & CONDITIONS Domain: (x, t) ∈ [0, 1]² · IC: u(x, 0) = sin(πx) · BC: u(0, t) = u(1, t) = 0
NETWORK ARCHITECTURE Multi-Layer Perceptron (3 hidden layers × 32 units, Tanh activation)
ACCURACY BENCHMARK Relative L2 error: 1.6e-3 against exact Fourier analytical solution on an 80×80 grid
Architecture & Residual Loss Expand
SAMPLING DOMAIN Interior Grid (x, t) Random Collocation IC: sin(πx) · BC: u=0 SURROGATE & AUTODIFF Surrogate MLP 3 layers × 32 units Output field u_pred(x, t) PyTorch Autodiff torch.autograd.grad() ∂u/∂t (1st order) ∂²u/∂x² (2nd order) RESIDUAL LOSS PDE Residual Loss mean( (u_t - αu_xx)² ) Rel L2: 1.6e-3 Exact Mode Decay
PINN solution of the 1D heat equation compared with the analytical solution
Figure: Neural network predicted field (left) vs analytical Fourier solution (center) and pointwise residual error (right).

About

I hold a degree in Physics and work as a software engineer across low-level systems, mathematical modeling, and machine learning. My approach combines analytical rigor with clean, reliable software engineering.

I enjoy building systems from first principles, prioritizing predictable execution, deterministic memory layouts, and thorough numerical verification across diverse problem domains.

Systems C / C11
Zero-allocation hot paths, static memory arenas, and dependency-free runtimes.
Computational Physics
Differential equations, numerical stability, and analytical benchmark validation.
Scientific ML
Physics-informed neural networks, custom binary weight serialization, and parity testing.

Contact