Hi yt user, I start to use yt-3.x version for the gadget analyses. Although I have previously used the yt-2.6x version for the enzo analyses, I find that there are many differences between two. [Now, I find that new yt is significantly improved than previous one but I need some adjustment..] Here, I have a question regarding to derived field. Since, my gadegt outputs only have InterenalEnergy, I need to make a derived field for temperature as follow: ============== @derived_field(name=("gas","temperature"), units="K") def _temperature(field, data): BOLTZMANN = 1.3806e-16 PROTONMASS = 1.6726e-24 GAMMA = 5.0 / 3.0 H_MASSFRAC = 0.76 mu = 4.0 / (3.0 * H_MASSFRAC + 1.0 + 4.0 * H_MASSFRAC * data["gas","ElectronAbundance"]) return data["gas","InternalEnergy"]*(GAMMA-1)*mu*PROTONMASS/BOLTZMANN ================ and try to make phase diagram and got the following error message: ..... yt : [INFO ] 2015-01-04 19:56:35,791 Max Value is 4.03205e-21 at 30150.5327224731445312 31066.5464401245117188 29380.5456161499023438 Traceback (most recent call last): File "phase.py", line 32, in <module> weight_field=None) File "/Users/jhchoi/common/src/yt/yt/visualization/profile_plotter.py", line 699, in __init__ fractional=fractional) File "/Users/jhchoi/common/src/yt/yt/data_objects/profiles.py", line 1331, in create_profile for f, l in zip(bin_fields, logs)] File "/Users/jhchoi/common/src/yt/yt/data_objects/derived_quantities.py", line 482, in __call__ rv = super(Extrema, self).__call__(fields, non_zero) File "/Users/jhchoi/common/src/yt/yt/data_objects/derived_quantities.py", line 56, in __call__ sto.result = self.process_chunk(ds, *args, **kwargs) File "/Users/jhchoi/common/src/yt/yt/data_objects/derived_quantities.py", line 490, in process_chunk fd = data[field] File "/Users/jhchoi/common/src/yt/yt/data_objects/data_containers.py", line 240, in __getitem__ self.get_data(f) File "/Users/jhchoi/common/src/yt/yt/data_objects/data_containers.py", line 661, in get_data self._generate_fields(fields_to_generate) File "/Users/jhchoi/common/src/yt/yt/data_objects/data_containers.py", line 687, in _generate_fields fd.convert_to_units(fi.units) File "/Users/jhchoi/common/src/yt/yt/units/yt_array.py", line 416, in convert_to_units new_units = self._unit_repr_check_same(units) File "/Users/jhchoi/common/src/yt/yt/units/yt_array.py", line 402, in _unit_repr_check_same self.units, self.units.dimensions, units, units.dimensions) yt.utilities.exceptions.YTUnitConversionError: Unit dimensionalities do not match. Tried to convert between dimensionless (dim 1) and K (dim (temperature)). It looks that new yt become a bit picky on the units. In this derived field, the unit contribution from BOLTZMANN and PROTONMASS is not recognized and it causes error, I think. How can I resolve this error? Moreover, how can I make derived field without sensitive unit matching? Sometimes, I used derived field when I need to convert log units for visualization, and when dealing with the dimensionless field. Thank you for help, Junhwan