![](https://secure.gravatar.com/avatar/b279d746f54e2cd6062e8279a767c4bc.jpg?s=120&d=mm&r=g)
Yes, adding a direct stddev would be nice (and would not be too much overhead) but I think this can be done in two passes. Pass one: calculate the average value. This would be a standard profile. Pass two: set_field_parameter of the average value as a function of whatever. Inside your new derived field, calculate the delta between the average and the actual field value. Take average of this new derived field. It's probably a better idea to just add stddev directly. There is an extant algorithm for doing a one-pass stddev that is robust against round-off errors; I would be happy to help someone out to add that to the code. -Matt On Wed, Feb 29, 2012 at 4:11 PM, John ZuHone <jzuhone@head.cfa.harvard.edu> wrote:
I do not believe this can be done with the current code. It's something I'd like to see, however.
I would be willing to code this up, but it will probably be weeks before I have time.
John Z
On Wed, 29 Feb 2012, Britton Smith wrote:
I think what Junhwan is asking is whether it's possible to do a profile of velocity dispersion. If I understand correctly, the problem is that this would require, for every spherical shell in a radial profile, the calculation of the standard deviation of the VelocityMagnitude field. I'm not sure if this is possible within the existing profile framework. Can anyone else comment on this?
On Wed, Feb 29, 2012 at 2:25 PM, Nathan Goldbaum <goldbaum@ucolick.org>wrote:
Hi Junhwan,
Can you paste a script and a traceback that shows the error you're seeing? You should be able to pass the BulkVelocity to the derived field via set_field_parameters.
You can paste a script from the command line with the following command:
yt pastebin name_of_script.py
Nathan Goldbaum Graduate Student Astronomy & Astrophysics, UCSC goldbaum@ucolick.org http://www.ucolick.org/~goldbaum
On Feb 29, 2012, at 8:31 AM, Jun-Hwan Choi wrote:
Hi YT users,
I would like to make a (spherical and/or cylindrical) profile of the velocity dispersion. In order to do so, I need to compute the mean velocity (BulkVelocity) for a given shell (or ring), and pass this value to newly defined velocity dispersion field, and then make a profile for the velocity dispersion field. Is there a particular way in yt to handle this?
Junhwan
P.S.: A few weeks ago I posted a similar question and Matt gave me a following hint. @derived_field(name = "deltaLocalCircularVelocity") def delta_LocalCircularVelocity(fi eld, data): fn, x, cv = data.get_field_parameter("local_circular_velocity") cv0 = na.interp(data[fn].ravel(), x, cv) cv0 = cv0.reshape(data[fn].shape) delta_cv = cv0 - data["LocalCircularVelocity"] return delta_cv
You'll need to do something like this on the data object from which you are getting your data:
sp.set_field_parameter("local_circular_velocity", (fn, prof[fn], prof["LocalCircularVelocity"]))
However, it does not work for me and it is also complicate to understand and modify it.
-- -------------------------------------------------------------- Jun-Hwan Choi, Ph.D. Department of Physics and Astronomy, University of Kentucky Tel: (859) 897-6737 Fax: (859) 323-2846 Email: jhchoi@pa.uky.edu URL: http://www.pa.uky.edu/~jhchoi --------------------------------------------------------------
!DSPAM:10175,4f4e76d329502195409319! _______________________________________________
yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
!DSPAM:10175,4f4e76d329502195409319!
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org