[yt-users] Problem with Units in a Derived Field

Cameron Hummels chummels at gmail.com
Mon Aug 24 16:56:22 PDT 2015


Hi Jared,

The problem is one of units.  In order to make common arithmetic work like
addition, yt requires both arguments going into the addition operator to
have the same units.

In your line,

fHI = (recomb * ne) / (gamma_HI + (gamma_c *ne))

you're adding two things (gamma_HI) and (gamma_c*ne) that have different
units--in this case, something with (code_mass/code_length**3) units and
something with no units defined as (1).

In order to fix this, you can re-assign the appropriate units to different
arrays or quantities with the YTArray and YTQuantity classes.  In this
case, make sure that the two arguments going into the addition have the
same units.  If you want to recast "ne" to have number density units, you
can do this:  from yt.units.yt_array import YTQuantity; ne = YTQuantity(ne,
'cm**-3').  For more info on units, check out
http://yt-project.org/docs/dev/analyzing/units/index.html

I hope this helps!

Cameron

On Mon, Aug 24, 2015 at 4:12 PM, Jared Coughlin <Jared.W.Coughlin.29 at nd.edu>
wrote:

> Hello! I have a gadget snapshot for which the standard internal energy
> block has been replaced by one containing the temperature.  I'm trying to
> calculate a derived field for the neutral hydrogen number density,  but I'm
> getting an error when I try to do ds.add_field():
>
> http://paste.yt-project.org/show/5833/
>
> However, I get an error about being unable to add quantities with
> differing units:
>
> http://paste.yt-project.org/show/5834/
>
> The docs say not to do any unit conversion because that is apparently
> taken care of behind the scenes, so I didn't.  I was just wondering if
> there was a way around this? Thanks!
> -Jared
>
>
> _______________________________________________
> yt-users mailing list
> yt-users at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>
>


-- 
Cameron Hummels
NSF Postdoctoral Fellow
Department of Astronomy
California Institute of Technology
http://chummels.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-users-spacepope.org/attachments/20150824/76b2c622/attachment.html>


More information about the yt-users mailing list