---------------------------------------------------------------- * pmzize by num chg / N, instead of # sweeps? somehow? * pseudocode to daniel ! discontinuity in num_chg at T=6 ... ?!? ---------------------------------------------------------------- Daniel Mon. 4-23: k doubles everywhere! :) k sync2rcm k bubble around pi(x) instead of x. k Delta_H after y == ix test. k get dist sq ... k inline zero_centered_mod ... * du reader's guide ... :) * lattice program ... :( * ri=1 pixb=0,1 * cache sqdist in bubbles ... use a hash?? ! box structure up front * occ dens verbosity or some such. ! rho discontinuity is *not* OK. This needs rethinking! * tune bubble frac to get ~0.5 acceptance rate. This is OK now that we have pix bubbles. :) * E[other RVs]: counts? k code up - to DU * Noise in -- law of small numbers? k For rho_infty, locate the 45-degree outer corner. :) * test Var[rho_infty] as function of T, L, and brad. >> Point: higher acceptance rate + less cornery determination of rho_infty_T. ---------------------------------------------------------------- Daniel Mon. 4-21: ! above T_c, 45-degree reduction gives a bogus answer (no x-intercept). How to fix this continuously? * cache dist in metro windows? k re-examine number of keeps and changes ... ? k drift/corr plots for T=4.0, 6.4, 6.8 k subtract off slope=1 line segment from rho cut k autocorrelation: vary spa and plot it. - NOT thermalization but correlation. k tune spa and nr for worst-case parameter values. - check against ri=0/1 -- do they meet? * need to rework metro_windows for each x move ... * n2fit to get T_c's and gamma's. Need to visually trim. * Tplot * Work through the algebra for L fit. * Code up the L fit. --- OR --- * is extrapolation enough? * collect data for L=36, L=50 ... * need to code up point motion & reacquire all the data. * T=8.0 negative rho fit ... when is and when is not the fit appropriate? - check k1 and k2. ---------------------------------------------------------------- * mmap v2db.dat k tabulate two-cycle perf k make a cheat sheet for alpha_GRU vs. T and a vs. alpha k implement T option in mcrcm.c k phi(alpha) -> rho_infty(T) k re-do plots for T vs. rho_infty(T) (rather than alpha_GRU and phi(alpha)). k make log-log plots for T vs. rho_infty(T) * power-law fit without point motions * metropolize point motions * power-law fit with point motions - (Tc-T)^gamma for some gamma (critical exponents) for each L; as L to infty, TcL to Tc - power-law fit for TcL and then extrapolate * longest cycles etc ... * tabulate estimated CPU time to find T_c(a). - L = 10,12,14,16 (4) - a = 0.01, 0.05, 0.08, 0.10 (4) - T = 4.8 5.2 5.6 6.0 6.4 (5) - Total 80 sim runs. - 10,000 seconds per run (xxx time this!!) ~= 3 processor-hours. - So, 240 processor-hours = 10 processor-days. - Doable in a couple of days using four processors. * plot3d for dots - http://www.scipy.org/Cookbook/Matplotlib/mplot3D ---------------------------------------------------------------- * Make a done.txt !! points_t: 1:N, 0:N, 0:N-1. Comment well! :) !! send_xy_delta -> just delta_n2 :) * doc: - P(pi): along the lines of rc2.txt. :) k long slides to paper! :) ! loop fig to paper. * Python: - gif concatenator - gif maker - stats/histo/pdf :) - xgr replacement?!? - plot maker for H and rho - dot-plots ---------------------------------------------------------------- Interactions: * n2: ! quantify the right alphas - with randinit=0, it's hard to leave the identity - with randinit=1 (even in the non-interacting case), initial energy is *very* high and the default thermalization criterion is premature. The effect is more pronounced at higher temperatures. - I need to get the same phi(alpha) results regardless of initial state!!! - Maybe run simultaneously with randinit=0 *and* randinit=1, and consider thermalization to have occurred when the two cross? Or, at least, run two separate progress with ri=0/1 and experiment to find the right thermalization criterion. - pretherm w/ unif perm on metro windows. randinit=2. :) - plot phi(alpha_GRU) curves against T for various a's. * n2 article: k reproduce GRU T_c(alpha) - write that in terms of beta. Or T. - find BU T_c(alpha) for N2 - Write it up! :) - find MH T_c(alpha) for TJI - Write it up. * v2metro: !!! with V(*') fix, there are far more long-r table misses. Damn! - average nnei printf n x,x',y,y' -> x_1, x_2, y_1, y_2. k check derivation of u V(x,y,x',y'). CODE AND DOC! k decimate rho plots k v2db extents. more r? k v2db dups? enhance metro windows? k get_Delta_V: restrict to metro windows? MW radius? - v2db hit/miss hook for printfs at end. n separate r1/r2 meshes w/ r2 longer? & r1 test_V2_IB1 r1=1 r2=1 theta=180 np=?? nb=?? > np too small: v2i drift?? > integral is 0.20000 > np=100: consistently about 0.03 regardless of nb > np=1000: consistently about 0.13 regardless of nb > np=10000: consistently about 0.19 regardless of nb > for this r1/r2/theta, it takes about 500,000 np to get close to the integral. > ... so now I guess I trust the integral? k tell daniel about this * Bridge: k check dbV against non-db V k move to r1/r2/theta k doc: 1/sqrt(n) in variance of sample mean. ramifications for bridge method. :( k hard-core U -- re-write entirely!! k separate out Vpi, V4, V2. k random walk vs. normal? k test mu/var/cov of xyT bridges. k integral numpts & avgreps are still silly. compute variances. 90 sec vs. 47 for L=3 d=2 a=1 - data file k reuse bridges; - V interpolation from brdbs. k split out remap function w/ separate src and dst. n write bessel bridges to disk. no need to compute norm squared on the fly. k brdb_populate -> brdb_populate_zz1 k test_brdb_slice leak! k show only cycles of minimum length? * Bridge database: k d=1,2,3: write floats. k bin2text and text2bin exes. k d into hdr. n Special function for V: - Yor - Handbook of Brownian Motion - Burdzy - Gikhman and Kiefer? bridge? - Pitman 534.pdf? k DPRINTF for DEBUG_V k lib.mk * Bridge: k test gasdev w/ histogram k test gasdev_ms w/ histogram k test gasdevd w/ plot? k test gasdev_dms w/ plot? k brownian k bridge k U() functions ... U-type enums ... ? k integrate U(w(s)) from 0 to 4beta. k interaction_type into get_H_of_pi k de-stub the metropolizer k only compute H in mcrcm if asked to. k track system energy in delta H and metropolizer. k code up / modify a track-H tester. k make a new test_delta_h.c derived from test_energy.c. k 2-cycle model in section 5 k need alpha and beta separately now. ~ alpha -> 1/4beta; gru_alpha cmd-line opts. - new alpha k optimize get_n2 -> get_n2_delta, avoiding the swap. Track the number of cycles throughout the simulation. # With L=7 d=3 alpha=0.8: # n0: 1.658 sec # n2 slow: 29.844 sec # n2 fast: 3.347 sec (9x speed-up) k pmt_swap_xy is broken; remove it. k test_n2 k cases 2a, 2b? doc. k two-cycle init: not 0 but compute, in case random. n optionally safetyize n2 in mcrcm.c. ---------------------------------------------------------------- Non-interacting: k alpha=1.68 in table1: - kfrac 0.001? Or what?? Maybe just vis? - L=25 to L=50? k Reproduce figure 2. * Reproduce figure 3. * Reproduce figure 4. * Reproduce figure 5. k Reproduce figure 6. k Reproduce figure 7. k Reproduce table 1. k phi(alpha) k phi(alpha) ~ 1 - ? Just pick N close to 0. Make it argified -- of course. :) k Metro windows -- O(N^2) storage, or constant recomputation? Is there a third choice? bit-mask adjacency matrix? print a warning if the incipient malloc exceeds a high-water mark? k run on chivos? k re-do code comments for rho. He now uses an ell rather than a chi. k Code up ---------------------------------------------------------------- Math: * Is DU interested in / aware of combinatorics of which cycle types predominate as N increases? * For zero temp, ~= L/N? Prove it. * Constancy of rho along cycle types -- prove it and write it up. Also constancy of along cycle types at zero temperature. Follows by linearity of expectation? k Side note: with init=id, H *rises* during thermalization; with init=unifrand, H *falls* during thermalization. ---------------------------------------------------------------- Software as application: * get/set: use set for void functions. k Downsample for xgr purposes. One million is ridiculous. * Make a tabulate option for P*, Z, P for N <= PMT_SN_MAX. k Fix my thermalization-detection criterion to make it reasonable for high alpha ... * print-pre-therm option n Examine the fortran code? k Then, code up the interacting case from that * Well-comment the bounds of rho and : 0 .. N. k Reproduce non-interacting graphs from condmat paper k rho and plots n bitwise adjacency matrix for metro windows? k for non-trivial metro windows, implement windowing per DU comment k remove/replace trivial metro windows. This slows down thermalization. k arg-ify N/L/d, temp/alpha k code and test cycle-type computation & display k averaged rho k #ifdef for trivial include-all metro windows. k Thermalization criterion -- ck w/ DU k Sample size for . Pre/post thermalization niter? k graph delta rho k spec psdes seed, rand48 seed: sran32, srand48 ---------------------------------------------------------------- Software management: r groom the directories on gadsden, mathnet, and stick. ! burn a CD. * GPL all the C and Python code * rename? pmt_free et al. vs. free_pmt et al. k py/c report: - 11.2 sec vs. 0.240 sec for L=7 d=3 nsw=1000; 46x - prof shows 40% of C time in psdes_hash_64 & 40% in get_dist_sq. k restore valgrind k ctags -> gadsden k make debug, opt, prof k call deconstructors in all test proggies & re-valgrind k fold psdes mods back into src/gen and re-publish. k rcmrand.h with #define's k profile and optimize r replace psdes? r valgrind for all test programs, w/ opt & debug, w/ all print options (r means done, but can & should be re-done periodically) ---------------------------------------------------------------- Documentation: * gprof how-to's, valgrind how-to's, packages needed, -Wall -Werror. Full details into rcm1.tex. * Usage of random-number generator: - unit uniform float - integer mod a specified N * make opt etc. ---------------------------------------------------------------- Reading: * Martin & Rothen's BEC section * Layman description: "What are you working on?" Make sure it's accessible AND accurate. * Sims/diffs <--> superfluids, superconductivity? * 541 stat mech stuff ... * Feynman-Kac ............... - Faris notes? - Get Ginibre [5] ----------------------------------------------------------------