ps, here is my script:


import matplotlib
matplotlib.use("Agg")
from yt.mods import *
import pylab
import sys
import numpy as na

def _MyRadius(field, data):
    center = data.get_field_parameter("center")
    dx = data["x"] - center[0]
    dy = data["y"] - center[1]
    dz = data["z"] - center[2]
    return na.sqrt(dx*dx + dy*dy + dz*dz)
add_field("Radius", function=_MyRadius, take_log=False, units='')

def _ConvertAccel(data):
    return data.convert("Length") / (data.convert("Time"))**2.0
def _RadiationAccelerationMagnitude(field, data):
    return ( (data["RadAccel1"])**2.0 + \
             (data["RadAccel2"])**2.0 + \
             (data["RadAccel3"])**2.0 )**(1.0/2.0)
    #return ( (data["Density"])*0.0+1.e-28)
add_field("RadiationAccelerationMagnitude", function=_RadiationAccelerationMagnitude, take_log=False,convert_function=_ConvertAccel, units=r"\rm{cm}/\rm{s}^{2}")
def _RadiationForceMagnitude(field, data):
    return ( data["RadiationAccelerationMagnitude"] * data["Density"] * data["CellVolume"])
add_field("RadiationForceMagnitude", function=_RadiationForceMagnitude, take_log=False, units=r"\rm{dynes}")

def _RadiationForce1(field, data):
    return ( (data["RadAccel1"] * data["Density"] * data["CellVolume"]))
add_field("RadiationForce1", function=_RadiationForce1, take_log=False, units=r"\rm{dynes}")
def _RadiationForce2(field, data):
    return (( data["RadAccel2"] * data["Density"] * data["CellVolume"]))
add_field("RadiationForce2", function=_RadiationForce2, take_log=False, units=r"\rm{dynes}")
def _RadiationForce3(field, data):
    return (( data["RadAccel3"] * data["Density"] * data["CellVolume"]))
add_field("RadiationForce3", function=_RadiationForce3, take_log=False, units=r"\rm{dynes}")



xc = 0.5
yc = 0.5
zc = 0.5
width = 179.2
frame_template = "aaSN/%s/RadPresProj_%s_%s"

folder = sys.argv[1]
starti = int(sys.argv[2])
endi = int(sys.argv[3])


Q = 1.e47
RPSF = 2.0
nu = 21.62 * 1.6022e-12 # in ergs
print "Q:",Q
print "RPScaleFactor:", RPSF
print "nu:",nu

rho_min = 1.e24
rho_max = 5.e27

for i in range(starti, endi ,1):
    print "a, i=",i
    pf = load("SciNet/%s/DD%04i/data%04i" % (folder, i, i))
    if pf is None: continue
    sp = pf.h.sphere([xc,yc,zc], 1.0)
    v, c = pf.h.find_max("Density")
    print i, c
    print v,c
    pc = PlotCollection(pf, center=(xc,yc,zc))
    total = 0
    print "Initial time, code units =", pf["InitialTime"]
    for ax in range(0,1):
        p = pc.add_projection("RadiationForceMagnitude", ax, weight_field="Density")
        p.set_log_field(True)
        p.set_cmap('Blues')
        p.set_zlim(1e24, 1e28)
        p.set_width(width,"pc")
        sp= pf.h.all_data()
        v1 = "RadiationForce2"
        v2 = "RadiationForce3"
        p.modify["quiver"](v1, v2, 12)
        if na.any(pf.h.grid_particle_count):
            colours = sp["ParticleMassMsun"]
            p.modify["particles"](1.0, p_size=10.0, col='r', minimum_mass= 6e0)
            print "          XXXXX Particles present XXXXX"
        Timemyr = pf["InitialTime"]*pf["years"]/1.e6
        p.modify["text"]((0.006,0.899),"%6.1f Myr" % (Timemyr), text_args = {'color':'w','fontsize':'30'})
        p.modify["text"]((0.005,0.9),"%6.1f Myr" % (Timemyr), text_args = {'color':'b','fontsize':'30' })
        pc.save(frame_template % (sys.argv[1],ax,i), override=True, format="eps")