-
Notifications
You must be signed in to change notification settings - Fork 3
Design spec
Connor Glosser edited this page Oct 29, 2015
·
1 revision
- Time marching
- Update dot via Bloch equation 1. Dot must know current pseudospin 2. Dot must compute "Omega matrix" (Bloch RHS operator) to produce a derivative 3. Integrate derivative by exploiting prolates?
- Communicate dot polarizations through Green's function
1. Construct dyadic green's function (polarization signal + 2 time derivatives)
1. Representation of signal via some basis function (prolates)
- Dots maintain knowledge of own past (Structures of arrays layout)
- Query signals at arbitrary (past) times
- Handle signal edge-cases; steady-state extrapolation near beginning of simulation, disfuturification near end
- Compute appropriate set of basis functions to sum (greater than/less than half timestep calculations) 1. Cache "basis function distance array"; evaluating basis functions at non-integral points corresponding to r = c*dt particle separations; likely a global structure.
- Field samples
- Same logic as what's used to communicate fields between dots except this is a "dot -> ghost particle" evaluation
- Object to represent collection of ghost particles? 1. Can have multiple samplers that way (high res, low res, volumetric/"surfimetric" point collections)
- SILO/visit output! 1. Can likely use a very similar interface to the one written for the F90 code 2. Spin components at each dot (point mesh) 3. E-field components at each sample point (quadmesh, perhaps other meshes later?)
- Calculation of physical quantities 1. Quantities TBD, likely "integrals" over all points/pairs of points (correlations)