Hi all, I'm new to this forum to find some help when setting a new derived field. The situation is that I want to obtain the plane-of-sky components of a vector field (e.g. magnetic field), so I follow (https://yt-project.org/doc/developing/creating_derived_fields.html#a-more-co...) and try something like this for testing my code: def _project_B(field, data): vector = data.get_field_parameter("vector") Bobs = data["gas", "magnetic_field_x"]*vector[0]+data["gas", "magnetic_field_y"]*vector[1]+data["gas", "magnetic_field_z"]*vector[2] return Bobs yt.add_field( ("gas", "project_B"), function=_project_B, sampling_type="cell", units="G", take_log=False, validators=[ValidateParameter(["vector"])], ) npix = 256j ds = yt.load('output_00017/info_00017.txt') sp = ds.r[::npix, ::npix, ::npix] sp.set_field_parameter("vector", yt.YTArray([0., 1., 0.], "dimensionless")) # it can be x/y vector when using off-axis projection Bproj = sp['gas', 'project_B'].value , which returned yt.utilities.exceptions.YTFieldNotFound: Could not find field ('gas', 'project_B') in info_00017 However, if I set "vector" -> "bulk_velocity", it works! Is there something I understand wrong? Best, Wei-An