<div><div>Hmm, if it's in a plugins file I think that's not supposed to happen for the reason you provide in your original email.</div></div><div><br></div><div>Any chance you can make a minimal example using one of the datasets on <a href="http://yt-project.org/data">yt-project.org/data</a> that triggers this behavior? If so please file an issue so I can reproduce and take a look.</div><div><br></div><div>Nathan</div><div><br><div class="gmail_quote"><div>On Mon, Mar 13, 2017 at 4:31 PM David Collins <<a href="mailto:dcollins4096@gmail.com">dcollins4096@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_msg">Hi, Nathan--<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">They're in a plugins file.  I like having my derived fields in one spot to reduce confusion and improve code re-use.  The biggest problem I foresee with using ds.add_field  is the units and validators and logs have gotten kind of complicated, and I have a morass of scripts that instantiate datasets in various places, so putting each add_field with each ds will be cumbersome without making some jig to hold the parts.  Maybe that will be straight forward. </div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Thanks!</div></div><div class="gmail_msg"><div class="gmail_msg">d.</div></div><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg">On Mon, Mar 13, 2017 at 5:10 PM, Nathan Goldbaum <span class="gmail_msg"><<a href="mailto:nathan12343@gmail.com" class="gmail_msg" target="_blank">nathan12343@gmail.com</a>></span> wrote:<br class="gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_msg">Is this yt.add_field call happening your script or in a plugins file?<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">If it's in a script one simple way to do it would be to replace the call to yt.add_field with a call to ds.add_field that's inside an if statement that checks to see if a needed field is in ds.field_list first.<br class="gmail_msg"><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div class="gmail_msg"><div class="m_-5690533976585920055h5 gmail_msg">On Mon, Mar 13, 2017 at 4:05 PM, David Collins <span class="gmail_msg"><<a href="mailto:dcollins4096@gmail.com" class="gmail_msg" target="_blank">dcollins4096@gmail.com</a>></span> wrote:<br class="gmail_msg"></div></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_msg"><div class="m_-5690533976585920055h5 gmail_msg"><div class="gmail_msg">Hi, Everybody!<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Every now and then I'll add a new field using yt.add_field() that includes the magnetic field.  If I then load another dataset that doesn't have the magnetic field, it chokes when it parses the hierarchy because it tries to validate my new field against the dataset that doesn't have B.  Is there a simple way I can fix my field definition to prevent this?  </div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">I'd like to avoid adding every field manually to each dataset, since I have a lot of fields, and a lot of dataset, and some have B and some dont, etc.  but I see that's probably the most obvious fix.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Thanks!</div><span class="m_-5690533976585920055m_-2195489779226976747HOEnZb gmail_msg"><font color="#888888" class="gmail_msg"><div class="gmail_msg">d.</div><div class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">-- <br class="gmail_msg"><div class="m_-5690533976585920055m_-2195489779226976747m_-8198660509978076910gmail_signature gmail_msg"><div class="gmail_msg">-- Sent from a computer.<br class="gmail_msg"></div></div>
</div></div></font></span></div>
<br class="gmail_msg"></div></div>_______________________________________________<br class="gmail_msg">
yt-users mailing list<br class="gmail_msg">
<a href="mailto:yt-users@lists.spacepope.org" class="gmail_msg" target="_blank">yt-users@lists.spacepope.org</a><br class="gmail_msg">
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br class="gmail_msg">
<br class="gmail_msg"></blockquote></div><br class="gmail_msg"></div></div></div>
<br class="gmail_msg">_______________________________________________<br class="gmail_msg">
yt-users mailing list<br class="gmail_msg">
<a href="mailto:yt-users@lists.spacepope.org" class="gmail_msg" target="_blank">yt-users@lists.spacepope.org</a><br class="gmail_msg">
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br class="gmail_msg">
<br class="gmail_msg"></blockquote></div><br class="gmail_msg"><br clear="all" class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"></div>-- <br class="gmail_msg"><div class="m_-5690533976585920055gmail_signature gmail_msg" data-smartmail="gmail_signature"><div class="gmail_msg">-- Sent from a computer.<br class="gmail_msg"></div></div>
</div>
_______________________________________________<br class="gmail_msg">
yt-users mailing list<br class="gmail_msg">
<a href="mailto:yt-users@lists.spacepope.org" class="gmail_msg" target="_blank">yt-users@lists.spacepope.org</a><br class="gmail_msg">
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br class="gmail_msg">
</blockquote></div></div>