# Verification: brute-force WCB on explicit y* vs vectorised formula; MC var vs exact var. import json, numpy as np rng = np.random.default_rng(1) n = np.array([8,16,32,64,8]); G=len(n); N=n.sum(); gid=np.repeat(np.arange(G), n) y = rng.standard_normal(G)[gid]*np.sqrt(.5) + rng.standard_normal(N)*np.sqrt(.5) yb=y.mean(); eh=y-yb; S=np.bincount(gid,weights=eh); W=rng.integers(0,2,(399,G))*2-1 d=(W@S)/N; Ss=W*S-d[:,None]*n; vs=G/(G-1)*np.sum(Ss**2,1)/N**2; t1=np.abs(d)/np.sqrt(vs) t2=[] for w in W: ys=yb+w[gid]*eh; m=ys.mean(); r=ys-m; v=G/(G-1)*np.sum(np.bincount(gid,weights=r)**2)/N**2; t2.append(abs(m-yb)/np.sqrt(v)) print("max abs diff t* vectorised vs brute force:", np.max(np.abs(t1-np.array(t2)))) res=json.load(open("out/results.json")) for c,m in res["cell_diagnostics"].items(): print(c, "MC var/exact var = %.4f"%(m["mc_var_ybar"]/m["var_exact"]), "distinct q:", m["n_distinct_q"], "zero V*:", m["n_zero_vstar"])