<div dir="ltr">Ah, the conversion factors change with time, so that "inverse conversion factor" idea won't work.   Is there a way to get to the grid, through add_field, before the convsersion is applied?<br></div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Mar 28, 2013 at 2:24 PM, Nathan Goldbaum <span dir="ltr"><<a href="mailto:nathan12343@gmail.com" target="_blank">nathan12343@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Dave,<br>
<br>
You can see the conversion factors yt applies by inspecting pf.conversion_factors.<br>
<span class="HOEnZb"><font color="#888888"><br>
-Nathan<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Mar 28, 2013, at 1:18 PM, David Collins <<a href="mailto:dcollins@physics.ucsd.edu">dcollins@physics.ucsd.edu</a>> wrote:<br>
<br>
> I tried Nathan's suggestion, but I'm still getting fields in CGS.  I<br>
> did the following, and just ran it in a script (not messing with the<br>
> plugins for now).  Is there anything else I need to do?  What I think<br>
> is happening is that in D2, data['Density'] is already converted to<br>
> cgs when it gets returned by D2.  Is there an easy way to get the<br>
> density conversion function that's getting used, so I can have the<br>
> converter return the inverse?  I added the ValidateGridType in order<br>
> to try to force it to be read before the convert, that didn't work.<br>
><br>
> def D2(field,data):<br>
>    return data['Density']<br>
> def no_convert(data):<br>
>    return 1<br>
> add_field('D2',function=D2,convert_function=no_convert,<br>
> validators=[ValidateGridType()])<br>
><br>
><br>
>> Nathan's suggestion is a good one, as well.  In principle I don't know<br>
>> why the conversion_factors option to the Enzo Static Output wouldn't<br>
>> work for this as well.<br>
><br>
> I dropped this method a while ago when other yt things started to<br>
> break.  I was doing something like this, but when I do it other things<br>
> like "load" stop working. Even just creating this class, not actually<br>
> doing anything with it, causes load to fail silently.<br>
><br>
> class EnzoStaticOutputMHD(EnzoStaticOutput):<br>
>    def __init__(self,*args,**kwargs):<br>
>        Conversion=2.5e-9/4.32e-7<br>
>        EnzoStaticOutput.__init__(self,*args,conversion_override={<br>
><br>
> 'MagneticField_C_1': Conversion,<br>
><br>
> 'MagneticField_C_2':  Conversion,<br>
><br>
> 'MagneticField_C_3':  Conversion,<br>
><br>
> 'MagneticField_F_1':  Conversion,<br>
><br>
> 'MagneticField_F_3':  Conversion,<br>
><br>
> 'MagneticField_F_2':  Conversion},<br>
>                                     **kwargs)<br>
><br>
><br>
><br>
>><br>
>> If we had your subclass or some type of test incorporated into yt, we<br>
>> would be able to verify that this functionality that you rely on<br>
>> continues to work.  It can be difficult to anticipate all use cases<br>
>> for the code, but this seems like one that could be valuable.<br>
>><br>
>> On Thu, Mar 28, 2013 at 3:21 PM, Nathan Goldbaum <<a href="mailto:nathan12343@gmail.com">nathan12343@gmail.com</a>> wrote:<br>
>>> Hi David,<br>
>>><br>
>>> Another option would be to temporarily define a new field that has a null or<br>
>>> trivial conversion function.<br>
>>><br>
>>> This field could live in your ~/.yt/my_plugins.py file so no need to touch<br>
>>> the yt codebase.<br>
>>><br>
>>> -Nathan<br>
>>><br>
>>> On Mar 28, 2013, at 12:18 PM, David Collins <<a href="mailto:dcollins4096@gmail.com">dcollins4096@gmail.com</a>> wrote:<br>
>>><br>
>>> That reads a single grid from the hierarchy?  Can I get yt to do projections<br>
>>> and whatnot in those units?<br>
>>><br>
>>> Previously I had subclassed EnzoStaticOutput with customized conversion<br>
>>> factors.  It's a bit outdated.<br>
>>><br>
>>> Thanks!<br>
>>> d.<br>
>>><br>
>>><br>
>>> On Thu, Mar 28, 2013 at 1:09 PM, Matthew Turk <<a href="mailto:matthewturk@gmail.com">matthewturk@gmail.com</a>> wrote:<br>
>>>><br>
>>>> On Thu, Mar 28, 2013 at 3:07 PM, David Collins <<a href="mailto:dcollins4096@gmail.com">dcollins4096@gmail.com</a>><br>
>>>> wrote:<br>
>>>>><br>
>>>>> Hi!<br>
>>>>><br>
>>>>> Is there a way to get yt to not convert data to CGS?  I'm doing some<br>
>>>>> debugging, and its easier to see the code units.<br>
>>>><br>
>>>> Read the data directly.<br>
>>>><br>
>>>> pf.h.io._read_data_set(grid, field)<br>
>>>><br>
>>>>><br>
>>>>> I had a work around for this a while ago, but there has been a bunch of<br>
>>>>> code<br>
>>>>> development since then.<br>
>>>><br>
>>>> What was your old way?<br>
>>>><br>
>>>>><br>
>>>>> Thanks!<br>
>>>>> d.<br>
>>>>><br>
>>>>> _______________________________________________<br>
>>>>> yt-users mailing list<br>
>>>>> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
>>>>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>>>>><br>
>>>> _______________________________________________<br>
>>>> yt-users mailing list<br>
>>>> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
>>>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>>><br>
>>><br>
>>> _______________________________________________<br>
>>> yt-users mailing list<br>
>>> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
>>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>>><br>
>>><br>
>>><br>
>>> _______________________________________________<br>
>>> yt-users mailing list<br>
>>> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
>>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>>><br>
>> _______________________________________________<br>
>> yt-users mailing list<br>
>> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
><br>
><br>
><br>
> --<br>
> Sent from my computer.<br>
> _______________________________________________<br>
> yt-users mailing list<br>
> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
<br>
_______________________________________________<br>
yt-users mailing list<br>
<a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
</div></div></blockquote></div><br></div>