Loading video...

Video Failed to Load

Go Home

What does a hydrogen atom’s |ψ|² actually look like as the quantum numbers change? This animation shows the electron probability density morphing in real time through superpositions α|nlm⟩ + β|n′l′m′⟩ while n, l, and m shift between allowed values.

10,305 views • 21 days ago •via X (Twitter)

0 Comments

No comments available

Comments from the original post will appear here

Related Videos

Lecture 3 of our Quantum Mechanics series. Lecture 2 gave us the one clean privilege quantum theory offers: treat ψ(x,t) as the state and ρ(x,t) = |ψ(x,t)|² as probability, because Schrödinger evolution forces ρ to obey a continuity equation. Lecture 3 is what that continuity equation is really telling you. If ρ behaves like a fluid, then the only question that matters is: What is the velocity field? Write ψ(x,t) = r(x,t) exp(i θ(x,t)). The magnitude r sets how much probability is sitting there. The phase θ sets where it tries to go. When you unpack the current j = Im(ψ* ∇ψ), it collapses to j = (ρ/m) ∇θ, which means the flow lines you draw are literally contours of phase geometry. Then the constraint that makes the picture bite: ψ has to be single-valued, so θ can’t wind by an arbitrary amount. Around any closed loop the total phase change must be 2π n, with n an integer. That’s why vortices aren’t features you add...they’re defects the math permits, in quantized units. In the render you see both layers at once...the 3D surface shows |ψ| breathing while the phase skin slides, and the 2D panel exposes the engine...current lines steering around discrete vortex charges. The math breakdown We write the state as a complex field ψ(x,t) on the plane (x in R²). The Born rule defines the probability density ρ(x,t) = |ψ(x,t)|² Schrödinger evolution (ħ = 1 units) is i ∂ψ/∂t = [ −(1/2m) ∇² + V(x,t) ] ψ Now derive conservation of probability. Start with ρ = ψ*ψ: ∂ρ/∂t = ψ* (∂ψ/∂t) + ψ (∂ψ*/∂t) Use Schrödinger and its complex conjugate: ∂ψ/∂t = (1/i) [ −(1/2m) ∇²ψ + Vψ ] ∂ψ*/∂t = (−1/i) [ −(1/2m) ∇²ψ* + Vψ* ] Substitute. The V terms cancel, and the remaining terms rearrange into the continuity equation ∂ρ/∂t + ∇·j = 0 with probability current j = (1/2mi) ( ψ* ∇ψ − ψ ∇ψ* ) = (1/m) Im(ψ* ∇ψ) So "probability density" really behaves like a conserved fluid density with flux j. Now expose the phase mechanism. Write ψ in polar form ψ(x,t) = r(x,t) exp(i θ(x,t)) Compute the gradient ∇ψ = exp(iθ) (∇r + i r ∇θ) Then ψ* ∇ψ = r (∇r + i r ∇θ) Taking the imaginary part gives Im(ψ* ∇ψ) = r² ∇θ = ρ ∇θ So the current becomes j = (ρ/m) ∇θ That’s the steering-wheel statement: Phase gradient sets the flow direction and speed (modulated by density and m). Finally, quantized vortices. Because ψ must be single-valued, going around any closed loop must return the same complex value. That forces the phase winding to be an integer multiple of 2π: ∮ ∇θ · dl = 2π n with n in Z n is the vortex charge. Vortex cores sit where ρ ≈ 0 (phase is undefined), and the current streamlines circulate around them. #QuantumMechanics #Wavefunction #SchrodingerEquation #BornRule #ProbabilityCurrent #ContinuityEquation #Phase #Vortices #TopologicalDefects #ComplexAnalysis #MathematicalPhysics #Mathematics #Physics

Mathelirium

37,998 views • 7 months ago

Why Does Quantum Mechanics Use a Complex Wavefunction? Schrödinger’s equation doesn’t start from mystery. It starts from a very specific bet. The state of a particle is a complex field ψ(x,t), and whatever time-evolution rule we choose has to move ψ forward while preserving total probability. So the basic question is simple. What equation should ψ satisfy so that |ψ|² behaves like a conserved density, the way mass density does in fluid flow? What is ψ? Think of ψ(x,t) as an amplitude attached to the statement the particle is at position x at time t. It’s not a probability. It’s the thing you add first, and only at the end do you square it: p(x,t) = |ψ(x,t)|² Because ψ is complex, it has magnitude and phase. Write it as ψ(x,t) = r(x,t) exp(i θ(x,t)) Then r² = |ψ|² is the density, and the phase θ ends up controlling the flow through the probability current. Where does Schrödinger’s equation come from? Start with two empirical inputs that tie waves to particles: E = ħ ω p = ħ k Here ħ is Planck’s constant divided by 2π. It’s the conversion factor between frequency and energy, and between wavenumber and momentum. A plane wave with angular frequency ω and wavevector k is ψ(x,t) = A exp(i(k·x − ωt)) Now watch what derivatives do to this wave: ∂ψ/∂t = −i ω ψ ∇ψ = i k ψ ∇²ψ = −|k|² ψ Multiply by ħ and you get: i ħ ∂ψ/∂t = ħ ω ψ = E ψ −i ħ ∇ψ = ħ k ψ = p ψ −ħ² ∇²ψ = ħ² |k|² ψ = p² ψ So for plane waves, the operators Ê = i ħ ∂/∂t p̂ = −i ħ ∇ act like energy and momentum. Now bring in the classical, nonrelativistic energy bookkeeping: E = p²/(2m) + V(x) Kinetic plus potential. That’s it. Turn it into an equation for ψ by replacing E and p with the operators above: Ê ψ = (p̂²/(2m) + V) ψ Since p̂² = (−i ħ ∇)·(−i ħ ∇) = −ħ² ∇², this becomes i ħ ∂ψ/∂t = ( −ħ²/(2m) ∇² + V(x) ) ψ That’s the time-dependent Schrödinger equation. This derivation is a controlled heuristic. Match the plane-wave identities to the measured relations E = ħω and p = ħk, then impose the same energy bookkeeping you trust in classical mechanics. Why this is the right kind of rule If ψ is the state, we need a rule that preserves total probability: ∫ |ψ(x,t)|² dx = 1 Schrödinger evolution does, and you can see it by deriving a continuity equation. Let ρ(x,t) = |ψ|² = ψ*ψ. Differentiate: ∂ρ/∂t = ψ* ∂ψ/∂t + ψ ∂ψ*/∂t Use Schrödinger and its complex conjugate. The potential terms cancel, and what’s left can be rearranged into ∂ρ/∂t + ∇·j = 0 with probability current j = (ħ/(2mi)) ( ψ* ∇ψ − ψ ∇ψ* ) That’s the cleanest way to say what ψ is. |ψ|² behaves like a conserved density, the phase drives a current, and the time evolution is fixed, up to V, by combining wave relations with energy bookkeeping: i ħ ∂ψ/∂t = ( −ħ²/(2m) ∇² + V ) ψ #QuantumMechanics #SchrodingerEquation #WaveFunction #BornRule #Physics #MathematicalPhysics

Mathelirium

20,781 views • 6 months ago

Quantum Mechanics Series Lecture 4 Lecture 1 established that ρ(x,t) = |ψ(x,t)|² behaves like a conserved probability density. Lecture 2 showed what drives that flow. We also saw that writing ψ = r exp(iθ) makes the probability current proportional to the phase gradient, making it clear that phase geometry literally steers the motion. Lecture 3 then showed that the centroid of that flow can move almost classically when the packet is tight and the external potential is smooth. However, that raises yet another question. If the centroid can look classical, why does the full wave still spread, bend, split, and interfere in ways no classical particle cloud would? This is because the wave is not driven only by the external potential. It is also driven by its own curvature. Write ψ(x,t) = r(x,t) exp(iθ(x,t)) with ρ = r². Then Schrödinger’s equation gives two coupled real equations. One is the continuity equation you already know. The other looks like a Hamilton-Jacobi equation, but with one extra term: Q = −(1/2m) ∇²r / r This is the so-called Quantum Potential. It depends entirely on how the amplitude bends across space. So, the wave is being shaped not only by V(x,t), but also by the geometry of its own envelope. In the animation, the upper surface is still |ψ| and its skin is still colored by arg(ψ). The glowing threads still trace the probability current. But now a second membrane hangs underneath. That lower membrane encodes the quantum potential Q itself. The porcelain bead marks the quantum centroid. The amber bead follows a classical centroid under the same external V. When those paths separate, the lower membrane tells you why. The difference is not magic but the extra term classical mechanics does not have. The math breakdown: Start from Schrödinger evolution in units with ħ = 1: i ∂ψ/∂t = [ −(1/2m) ∇² + V(x,t) ] ψ Write the state in polar form: ψ = r exp(iθ) Then ρ = |ψ|² = r² From the imaginary part, you recover probability conservation: ∂ρ/∂t + ∇·j = 0 with j = (1/m) Im(ψ* ∇ψ) = (ρ/m) ∇θ So the local velocity field is v = j / ρ = ∇θ / m Now take the real part of Schrödinger’s equation. That gives ∂θ/∂t + |∇θ|² / (2m) + V + Q = 0 where Q = −(1/2m) ∇²r / r This is the classical Hamilton-Jacobi equation with one extra term. That extra term is what makes quantum motion locally different from classical motion. Take a gradient of that phase equation and use v = ∇θ / m. Then the flow obeys an Euler-like equation: ∂v/∂t + (v·∇)v = −(1/m) ∇(V + Q) In other words, there are really two forces in the problem. One comes from the external potential V. The other comes from the wave’s own curvature through Q. That is why Ehrenfest is only approximate. The centroid can still satisfy d⟨x⟩/dt = ⟨p⟩/m d⟨p⟩/dt = −⟨∇V⟩ but the internal shape of the packet evolves under the combined influence of V and Q. When the packet stays broad and smooth, Q is gentle and the motion looks more classical. When the packet develops sharp curvature or interference structure, Q becomes strong and the classical picture breaks down. That is what this scene is designed to show live. #QuantumMechanics #Wavefunction #SchrodingerEquation #BornRule #ProbabilityCurrent #ContinuityEquation #Phase #EhrenfestTheorem #QuantumPotential #Madelung #HamiltonJacobi #MathematicalPhysics #Mathematics #Physics

Mathelirium

20,456 views • 4 months ago

DLSS 4.5 performance cost on the RTX 4070 Super, tested in #TheLastOfUs, #ArcRaiders, and #RedDeadRedemption2 at 2160p (4K). This time, I replaced the games default CNN models with native 4K to show how the DLSS Transformer model compares against native TAA / TSR. I also included a comparison between the new presets using Performance mode and Preset K in Quality mode. The Last of Us Part I Performance mode – Native (TAA) → Transformer Preset K: ~59% gain – Preset K → Preset L: ~13% hit – Preset K → Preset M: ~7% hit Quality mode – Native (TAA) → Transformer Preset K: ~35% gain – Preset K → Preset L: ~23% hit – Preset K → Preset M: ~17% hit Preset K Quality mode vs Preset L & M Performance mode – Preset K → Preset L: ~5% gain – Preset K → Preset M: ~13% gain Arc Raiders Performance mode – Native (TSR) → Transformer Preset K: ~80% gain – Preset K → Preset L: ~11% hit – Preset K → Preset M: ~7% hit Quality mode – Native (TSR) → Transformer Preset K: ~47% gain – Preset K → Preset L: ~21% hit – Preset K → Preset M: ~16% hit Preset K Quality mode vs Preset L & M Performance mode – Preset K → Preset L: ~5% gain – Preset K → Preset M: ~13% gain Red Dead Redemption 2 Performance mode – Native (TAA) → Transformer Preset K: ~15% gain – Preset K → Preset L: ~11% hit – Preset K → Preset M: ~4% hit Preset K Quality mode vs Preset L & M Performance mode – Preset K → Preset L: ~0% gain – Preset K → Preset M: ~6% gain At 4K, The performance cost of the new presets is more significant than at 1440p, especially in Quality mode, which to be fair, doesn’t really make much sense to use at this resolution on a mid range GPU even with Preset K. In most cases, Preset L and M offer good image quality at 4K in Performance Mode. But right now, I think the biggest and most noticeable visual issue with these new presets is the oversharpening in some games, like The Last of Us. This problem is even more obvious at this resolution especially with Preset M.

BenchmarKing

31,353 views • 7 months ago

Introducing: Ecliptica_Veil_Refrain Step into the latest marvel of #Trinity’s AI simulation universe: Ecliptica_Veil_Refrain. {"RENDERER_STATE":{"Nraymarch":64,"spp_per_frame":1,"max_spp":32,"show_bounds":false,"skyColor":[0,0,0],"sunColor":[0.5489273590657855,0.5489273590657855,0.5489273590657855],"sunPower":1.367144516090617,"sunLatitude":76.73485298771871,"sunLongitude":138.94571082309892,"colliderSpec":[0.6666666666666667,0.6013071895424837,0.6013071895424837],"colliderDiffuse":[0.06666666666666667,0.3607843137254902,0.8980392156862745],"colliderRoughness":0.341872424239417,"exposure":0.3664541543565143,"gamma":1.5549681231534773,"saturation":1.2470158685577861,"anisotropy":0.5438412313677659,"extinctionScale":-0.4726864204465695,"emissionScale":1.0281427174005486,"blackbodyEmission":-11.619147601146414,"TtoKelvin":0.9924693630221351},"SOLVER_STATE":{"timestep":1,"NprojSteps":16,"vorticity_scale":0.43671445160906175,"Nx":160,"Ny":160,"Nz":160,"max_timesteps":500,"expansion":0.1},"SIMULATION_STATE":{"gravity":0.029775985336981482,"buoyancy":0.009925328445660495,"radiationLoss":0.9970476559131248,"blast_height":0.13595000702148574,"blast_radius":0.1583940602227418,"blast_velocity":48.523827956562414,"blast_heat_flux":49.62664222830247,"animation_period":13.233771260880658,"dust_inflow_rate":4.962346815110676,"dust_absorption":[0.8980392156862745,0.5843137254901961,0.06274509803921569],"dust_scattering":[0.011764705882352941,0.011764705882352941,0.9372549019607843],"TtoKelvin":52.93508504352263},"CAMERA_STATE":{"pos":[428.5065222671221,231.18004269182862,-137.9063177523132],"tar":[95.47877293559753,48.26456077993378,85.76052711016654],"near":1,"far":20000},"GUI_STATE":{"visible":true},"EDITOR_STATE":{"common_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Bind UI parameters to uniforms used in the various programs\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n// \"Physics\"\nuniform float gravity; // {\"name\":\"gravity\", \t \"min\":0.0, \"max\":0.1, \"step\":0.001, \"default\":0.05}\nuniform float buoyancy; // {\"name\":\"buoyancy\", \"min\":0.0, \"max\":0.1, \"step\":0.001, \"default\":0.5}\nuniform float radiationLoss; // {\"name\":\"radiationLoss\", \"min\":0.9, \"max\":1.0, \"step\":0.01, \"default\":0.999}\n\n// Blast geometry \nuniform float blast_height; // {\"name\":\"blast_height\", \"min\":0.1, \"max\":0.9, \"step\":0.001, \"default\":0.25}\nuniform float blast_radius; // {\"name\":\"blast_radius\", \"min\":0.0, \"max\":0.3, \"step\":0.001, \"default\":0.1}\nuniform float blast_velocity; // {\"name\":\"blast_velocity\", \"min\":0.0, \"max\":100.0, \"step\":0.1, \"default\":50.0}\nuniform float blast_heat_flux; // {\"name\":\"blast_heat_flux\", \"min\":0.0, \"max\":100.0, \"step\":1.0, \"default\":100.0}\nuniform float animation_period; // {\"name\":\"animation_period\", \"min\":0.0, \"max\":100.0, \"step\":1.0, \"default\":100.0}\n\n// Dust\nuniform float dust_inflow_rate; // {\"name\":\"dust_inflow_rate\", \"min\":0.0, \"max\":10.0, \"step\":0.01, \"default\":1.0}\nuniform vec3 dust_absorption; // {\"name\":\"dust_absorption\", \"default\":[0.5,0.5,0.5], \"scale\":1.0}\nuniform vec3 dust_scattering; // {\"name\":\"dust_scattering\", \"default\":[0.5,0.5,0.5], \"scale\":1.0}\n\n// Rendering\nuniform float TtoKelvin; // {\"name\":\"TtoKelvin\", \"min\":0.0, \"max\":300.0, \"step\":0.01, \"default\":10.0}\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nfloat Tambient;\nfloat M_PI = 3.141592;\n\nvoid init()\n{\n\t// Any global constants defined here are available in all functions\n \tTambient = 1.0;\n}","initial_glsl":"///////////////////////////////////////////////////////////////////////////////////////////////////////\n// Specify the initial conditions for the simulation (velocity, temperature, and medium density/albedo)\n// at time 0.0 (if unspecified, all quantities default to zero).\n///////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nvoid initial_conditions(in vec3 wsP, // world space center of current voxel\n in vec3 L, in float dL, // world-space extents of grid, and voxel-size\n inout vec3 v, // initial velocity\n inout vec4 T, // initial temperature\n inout vec3 medium, // initial per-channel medium density (extinction)\n inout vec3 mediumAlbedo) // initial per-channel medium albedo\n{\n v = vec3(0.0);\n T = vec4(Tambient);\n medium = vec3(0.0);\n mediumAlbedo = vec3(0.0);\n}\n","inject_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Update the velocity, temperature via either:\n// - specification of volumetric inflow/outflow rate due to sources/sinks (vInflow, Tinflow)\n// - modification in-place, i.e. Dirichlet boundary conditions (v, T)\n// Also specify the injected medium density inflow rate, and its scattering albedo.\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nvoid inject(in vec3 wsP, // world space center of current voxel\n in float time, // time\n in vec3 L, in float dL, // world-space extents of grid, and voxel-size\n inout vec3 v, // modify velocity in-place (defaults to no change)\n inout vec3 vInflow, // velocity inflow rate (defaults to zero)\n inout vec4 T, // modify temperature in-place (defaults to no change)\n inout vec4 Tinflow, // temperature inflow rate (defaults to zero)\n inout vec3 mediumInflow, // medium density (extinction) inflow rate (defaults to zero)\n inout vec3 mediumAlbedo) // medium albedo\n{\n float phase = 0.05*M_PI*time/animation_period;\n vec3 blast_center = 0.5*L + 0.5*vec3(0.5*L.x*sin(13.0*phase),\n 0.5*L.y*sin(17.0*phase),\n 0.5*L.z*sin(19.0*phase));\n \n vec3 dir = wsP - blast_center;\n float r = length(dir);\n dir /= r;\n float rt = r/(blast_radius*L.y);\n if (rt <= 1.0)\n {\n // Within blast radius: inject velocity and temperature\n float radial_falloff = max(0.0, 1.0 - rt*rt*(3.0 - 2.0*rt));\n vInflow = dir * blast_velocity * radial_falloff;\n Tinflow.r = blast_heat_flux * radial_falloff;\n\n \t// Also inject absorbing/scattering \"dust\"\n vec3 dust_extinction = dust_absorption + dust_scattering;\n mediumInflow = dust_extinction * dust_inflow_rate * radial_falloff;\n mediumAlbedo = dust_scattering / dust_extinction;\n }\n \telse\n \t{\n // Apply thermal relaxation due to \"radiation loss\" \n T.r *= radiationLoss;\n }\n}\n","influence_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Apply any external forces to the fluid\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nvec3 externalForces(in vec3 wsP, // world space center of current voxel\n in float time, // time\n in vec3 L, in float dL, // world-space extents of grid, and voxel-size\n in vec3 v, in float P, in vec4 T, // velocity, pressure, temperature at current voxel\n in vec3 medium) // medium density (extinction) at current voxel\n{\n // Boussinesq approximation (a la Fedkiw & Stam)\n float densityAvg = (medium.r + medium.g + medium.b)/3.0;\n float buoyancy_force = -densityAvg*gravity + buoyancy*(T.r - Tambient);\n return vec3(0.0, buoyancy_force, 0.0);\n}","collide_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Specify regions which contain impenetrable collider material\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nfloat collisionSDF(in vec3 wsP, // world space center of current voxel\n in float time, // time\n in vec3 L, in float dL) // world-space extents of grid, and voxel-size\n{\n // Regions which are solid obstacles have SDF < 0.0\n return 1.0e6;\n}","render_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Specify the fluid emission field \n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n// Approximate map from temperature in Kelvin to blackbody emiss\n// Valid from 1000 to 40000 K (and additionally 0 for pure full white)\nvec3 colorTemperatureToRGB(const in float temperature)\n{\n // Values from: \n mat3 m = (temperature <= 6500.0) ? mat3(vec3(0.0, -2902.1955373783176, -8257.7997278925690),\n\t vec3(0.0, 1669.5803561666639, 2575.2827530017594),\n\t vec3(1.0, 1.3302673723350029, 1.8993753891711275)) : \n\t \t\t\t\t\t\t\t\t mat3(vec3(1745.0425298314172, 1216.6168361476490, -8257.7997278925690),\n \t vec3(-2666.3474220535695, -2173.1012343082230, 2575.2827530017594),\n\t vec3(0.55995389139931482, 0.70381203140554553, 1.8993753891711275)); \n return mix(clamp(vec3(m[0] / (vec3(clamp(temperature, 1000.0, 40000.0)) + m[1]) + m[2]), vec3(0.0), vec3(1.0)), \n vec3(1.0), \n smoothstep(1000.0, 0.0, temperature));\n}\n\n\n/******************************************************/\n/* mandatory functions */\n/******************************************************/\n\n// Specify how the temperature is mapped to the local emission radiance\nvec3 temperatureToEmission(in vec4 T)\n{\n vec3 emission = colorTemperatureToRGB(T.r * TtoKelvin) * pow(T.r/100.0, 4.0);\n \treturn emission;\n}\n\n// Optionally remap the medium density (extinction) and albedo\nvoid mediumRemap(inout vec3 medium,\n inout vec3 mediumAlbedo)\n{}\n\n// Specify the phase function of the scattering medium\nfloat phaseFunction(float mu, // cosine of angle between incident and scattered ray\n float anisotropy) // anisotropy coefficient\n{\n const float pi = 3.141592653589793;\n float g = anisotropy;\n float gSqr = g*g;\n return (1.0/(4.0*pi)) * (1.0 - gSqr) / pow(1.0 - 2.0*g*mu + gSqr, 1.5);\n}\n"}}

$TRINiTY

19,625 views • 1 year ago