MAI PHYSICS / SELECTED PROJECT REPRODUCTION NOTES Md Ashraful Islam (Ash) | Prepared 5 November 2026 Public portfolio: https://maiphysics.com/portfolio Contact: projects@maiphysics.com These checks execute the public educational models. They are numerical and algorithmic observations, not trained-model results or physical measurements. Project development and the preparation of these notes were AI-assisted. SOURCE FILES Save these three public files into the same local directory: https://maiphysics.com/heat-solver.js https://maiphysics.com/robotics-model.js https://maiphysics.com/complexity-model.js They require no third-party packages. The following commands use Node.js 18+ and a shell supporting a quoted heredoc. Run them from that local directory. 1. HEAT DIFFUSION: REFERENCE AND GRID REFINEMENT Equation: u_t = alpha * u_xx, x in [0,1]. Initial condition: u(x,0) = sin(pi*x). Boundary conditions: u(0,t) = u(1,t) = 0. Reference: exp(-alpha*pi*pi*t) * sin(pi*x). Method: explicit forward-time, centred-space finite differences. alpha = 0.4, r = alpha*dt/dx^2 = 0.4, t = 0.2. All variables here are nondimensional. node <<'JS' const heat = require('./heat-solver.js'); console.log('intervals,steps,time,linf,l2'); for (const n of [20,40,80]) { const config = heat.config(n,0.4,0.4); const result = heat.solve(config,Math.round(0.2/config.dt)); console.log([n,result.steps,result.time,result.linf,result.l2].join(',')); } JS Reproduced values (rounded): intervals steps max absolute error grid-weighted L2 20 80 0.00103579537746 0.000732417935325 40 320 0.000258232570795 0.000182598001932 80 1280 0.0000645135652161 0.0000456179794429 Maximum error ratios are approximately 4.0111 and 4.0028 as grid spacing is halved. This supports the expected refinement behaviour for this smooth test problem with dt scaled as dx^2. Errors are measured only at grid points. No neural network, training data, material calibration or spacecraft validation is part of this model. Demo: https://maiphysics.com/#synthetic-lab 2. SYNTHETIC SENSING: A CORRECTION COUNTEREXAMPLE The known-parameter model uses constant velocity, exact object width, supplied occlusion and timestamps, and a deterministic sinusoidal disturbance. Corrected position = raw observation + f*W/2 + v*(L+H). W = 80 mm; prediction horizon H = 0.2 seconds. node <<'JS' const sensing = require('./robotics-model.js'); const time = (Math.PI/2 - 0.3)/(2*Math.PI*0.7); const result = sensing.frame({speed:40,latency:0,occlusion:0,amplitude:12},time); console.log(JSON.stringify({time,rawError:result.rawError, correctedError:result.correctedError,disturbance:result.disturbance},null,2)); JS Expected: time approximately 0.288934 seconds; raw error +4 mm; corrected error +12 mm; imposed disturbance +12 mm (rounding permitted). Removing systematic offset does not guarantee a smaller instantaneous absolute error. The residual is the imposed disturbance under the stated assumptions. This is not camera data, trained vision, robot control, or a sensor-precision measurement. There is no statistical confidence interval in this deterministic sinusoidal disturbance model. Demo: https://maiphysics.com/robotics-sensing 3. BOOLEAN VERIFICATION: ENUMERATION AND STRUCTURE node <<'JS' const sat = require('./complexity-model.js'); for (const [name,preset] of Object.entries(sat.presets)) { const rows = sat.enumerate(preset); console.log(JSON.stringify({name,variables:preset.n,assignments:rows.length, satisfying:rows.filter(r=>r.pass).length, literalInspectionsPerCandidate:rows[0].inspections})); } const rows = sat.enumerate(sat.presets.structure); const first = rows.findIndex(row=>row.pass); console.log({candidatesToFirstSolution:first+1, literalInspections:rows.slice(0,first+1).reduce((sum,r)=>sum+r.inspections,0)}); JS Expected preset summaries: mixed: 4 variables, 16 assignments, 5 satisfying, 16 inspections/candidate. structure: 6 variables, 64 assignments, 1 satisfying, 6 inspections/candidate. impossible: 4 variables, 16 assignments, 0 satisfying, 6 inspections/candidate. The structured preset reaches its first solution after 64 candidates and 384 literal inspections in this enumeration order. All clauses in that preset are positive unit clauses, so a different method can read off the answer directly. This is an educational operation count, not a proof about general complexity. P versus NP remains unresolved. Demo with step controls and JSON export: https://maiphysics.com/p-vs-np CONTRIBUTION AND SCOPE Ash's contribution includes problem definition, implementation direction, validation planning, output review and scientific explanation. Implementation was AI-assisted. A proposed study of AI-generated physical simulations is described separately in the portfolio; no LLM evaluation result is claimed. The original public source remains the reference for the functions and defaults. Floating-point output may differ in its last displayed digits across runtimes. These checks do not constitute a full browser, accessibility or physical-device test. Source and reuse information: https://maiphysics.com/terms.html