people often think tensors are just bigger matrices.
they’re not.
a matrix is one kind of tensor, just as a vector is another. tensors are the broader idea. they’re mathematical objects that represent relationships across multiple dimensions while preserving those relationships even when you change your coordinate system. that’s why physicists care much more about how a tensor transforms than how it’s stored in memory. the array of numbers is just one representation. the underlying object is independent of your choice of coordinates.
this is what makes tensors so powerful. the stress inside a bridge, the curvature of spacetime, the electromagnetic field, the inertia of a robot arm, and the activations inside a neural network can all be described using tensors. at first glance these seem like completely unrelated problems. mathematically, they’re variations of the same language. tensors let you describe quantities that have direction, interaction, and structure in a way that remains consistent regardless of your point of view.
the deeper lesson is that mathematics evolves by abstraction. numbers describe single values. vectors describe direction. matrices describe transformations. tensors describe relationships in arbitrarily many dimensions. each step isn’t about making mathematics more complicated. it’s about building a language capable of describing a richer reality. that’s why once you understand tensors, you start seeing the same mathematical structure hiding underneath robotics, computer vision, quantum mechanics, relativity, continuum mechanics, and deep learning.
@heliotsx o que mais tem é gente deixando de aceitar cartao de credito. eu sempre ofereci 10% de desconto no pagamento pix, na verdade é o pagamento com cartao que ficam 10% mais caro. hoje em dia ne aceito mais cartão...
Data structures scale by adding dimensions. A scalar is a single number. A vector is a one-dimensional array that can be a row of shape 1×3 or a column of shape 3×1. A matrix is a two-dimensional array of numbers arranged in rows and columns. A tensor is a multi-dimensional array with three or more dimensions.
Neural network training processes batches of multi-channel images as 4D tensors in convolutional models for object recognition.
We recently published an explainer on Smith Charts and were so inspired by the overwhelming enthusiasm that we’re launching the @arenaphysica Science Writing Fellowship!
We'll be embedding select fellows with our Research and Agent teams to author deep dives into topics across the EM spectrum to share with the world. We're looking for curious people who love making complex ideas click visually, especially those currently enrolled in a Master's or PhD program in EE, Applied Physics, Math, or Science Writing. You can learn more on our careers page.
Come write with us!
Quantifying surface geometry in 3D relies on two quadratic forms derived from a parametric map S = f(u,v).
Tangent vectors are fᵤ = df/du and fᵥ = df/dv; the unit normal is m = (fᵤ × fᵥ)/‖fᵤ × fᵥ‖. The first fundamental form is given by E = fᵤ · fᵤ, F = fᵤ · fᵥ, G = fᵥ · fᵥ so that I(x,y) = xᵀ[E F; F G]y. The second fundamental form is e = fᵤᵤ · m, f = fᵤᵥ · m, g = fᵥᵥ · m.
NURBS CAD kernels apply these coefficients to compute principal curvatures when shaping free-form automobile body panels.
Visualization of the Lorentz force.
F = q(E + v × B)
Showing electric acceleration, magnetic circular and helical motion, velocity selection in crossed fields, and
E × B drift.
Unpacking radial symmetry turns flat slices into true 3D volumes. Radial step Δρ, polar arc ρΔφ and azimuthal arc ρ sinφ Δθ multiply to the spherical volume element ΔV = ρ² sinφ Δρ Δφ Δθ.
Astronomers integrate this element over thin shells when computing enclosed mass inside neutron-star density profiles.
the fourier transform is one of those ideas that completely changes how you look at information. when you first see a signal, it just looks like a messy waveform changing over time. but the fourier transform asks a different question. instead of asking “what is the signal doing?”, it asks “what frequencies make up this signal?” suddenly, something that looked chaotic becomes a collection of simple sine and cosine waves, each with its own frequency and amplitude.
that’s why engineers constantly move between two worlds: the time domain and the frequency domain. in the time domain, you see how a signal evolves. in the frequency domain, you see its ingredients. noise becomes identifiable. dominant frequencies become obvious. filters become easy to design. whether it’s music, images, wireless communication, radar, vibration analysis, or MRI scans, the same mathematical idea keeps showing up because many complex signals are just simple waves layered on top of each other.
the deeper lesson has very little to do with waves. it’s about changing your representation. sometimes a problem looks impossible because you’re looking at it in the wrong space. the fourier transform doesn’t change the signal. it changes your perspective. and very often, changing the representation is enough to make the hidden structure reveal itself.
Visualization of Maxwell’s equations.
Showing electric flux from charge, divergence-free magnetic fields, electromagnetic induction, displacement current, and coupled electric and magnetic fields propagating through vacuum as light.
ASK CLAUDE TO MAP YOUR ENTIRE APP'S ARCHITECTURE INTO A SINGLE HTML PAGE AND JSON FILE.
THE HTML IS FOR YOU.
THE JSON IS FOR THE NEXT AGENT WORKING ON A NEW FEATURE.
YOUR CODEBASE NOW EXPLAINS ITSELF.
gradient, divergence, and curl are three ways of asking three completely different questions about a field. the gradient asks: where does this quantity increase the fastest? divergence asks: is something flowing out of this point or flowing into it? curl asks: is the field trying to rotate something? once you understand the questions they’re answering, the equations stop looking intimidating and start feeling inevitable.
this is why vector calculus is so powerful. instead of describing individual numbers, it describes the behavior of entire fields. temperature across a room becomes a scalar field. wind becomes a vector field. electric and magnetic fields become mathematical objects you can differentiate. suddenly you’re no longer tracking one measurement at a time. you’re describing how reality changes everywhere, all at once.
almost every modern engineering discipline is built on these three operators. fluid dynamics, electromagnetism, robotics, aerospace, computer vision, graphics, and machine learning all rely on them. maxwell’s equations are written in terms of gradient, divergence, and curl. navier-stokes uses them. optimization uses gradients to learn. once you learn vector calculus, you stop seeing isolated equations and start seeing a common language for describing how the physical world behaves.
The Jacobian matrix encodes the local stretching and orientation of a parametrized surface via its entries of partial derivatives.
For the surface z = f(u, v) where x = u and y = v, it takes the form [[1, 0, ∂f/∂u], [0, 1, ∂f/∂v]], with rows giving the tangent vectors t_u and t_v. Their cross product gives the upward normal vector n = [-∂f/∂u, -∂f/∂v, 1].
Designers rely on these normals in 3D computer graphics pipelines to simulate realistic shading and highlights on virtual models of consumer electronics.
Something I have been thinking about: in the past, the best engineers I knew spent a lot of time automating their work in various ways. Better vim/emacs automations, writing lint rules to catch repeat code issues, building up a suite of e2e tests so they don't need to smoke test the app manually. These kinds of things were the highest leverage activities an engineer could do, because it multiplied their own output, which in turn meant they could build more things.
I think many of these automations have become even more important now. This is true for a number of reasons.
First, infra and DevX automation speeds you up. And if you are running an army of agents, each of those agents will be sped up also. More automation == more output per unit of time.
Second, moving things to code improves efficiency. Your agent could fix an issue every time it sees that issue happen, but that uses tokens and might miss cases. If Claude instead writes a lint rule, CI step, or routine, that class of issue can be fully automated forever. This is really what people are talking about when they talk about loops -- it's about automating entire types of busywork rather than solving them one off. This isn't a new idea at all. Engineers have been doing this for a long time!
Third and most importantly, automation makes it possible for others to contribute to the codebase more easily. Increasingly what I am seeing is engineers are contributing to codebases on day one because Claude can navigate the codebase for them, and that non-engineers are able to contribute to a codebase as effectively as engineers can. What gets in the way of both of these is domain knowledge that lives in peoples' heads rather than in automation -- the stuff you used to have to learn when ramping up. What has changed thanks to agents is the domain knowledge that can be encoded as infrastructure is no longer limited to what is expressible in lint rules and types and tests; it can now capture nearly all domain knowledge, encoded as code comments and skills and CLAUDE.md rules and memories. If I put up a PR for an iOS codebase I don't know and a code reviewer rejects it because it doesn't use the right framework, or if a designer builds a new feature and it gets rejected because it doesn't follow the right architectural patterns, these are failures of automation.
Every team should be writing the CLAUDE.md's, REVIEW.md's, skills, and docs that enable agents to productively work in their codebase with zero additional context from the prompter. This sounds crazy, and at the same time is a natural extension of the stuff engineers have always done: automate, and encode domain knowledge as infrastructure. As the model gets smarter and as the harness matures, this task becomes easier. In the meantime, it is on every team to look for ways to convert their domain knowledge to infra so that Claude can write code better, so that code review catches issues automatically, and so the next person working on your codebase can contribute more easily.
As humans, we don't naturally have strong intuition around electromagnetism so @chris_m_bryant built a minigame into his blog post on Smith charts to help it click. Give it a try here: https://t.co/MdfXeh20Ow.
What should we demystify next? Let us know in the comments below ⬇️