-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extend yt support #3
Comments
Hi @matthewturk , CounterexampleI'm using import yt
yt.enable_parallelism()
def yt_inline_ProjectionPlot( fields ):
ds = yt.frontends.libyt.libytDataset()
prjz = yt.ProjectionPlot(ds, 'z', fields)
if yt.is_root():
prjz.save() Code snippet of # yt/data_objects/construction_data_containers.py
class YTProj(YTSelectionContainer2D):
def get_data(self, fields=None):
...
with self.data_source._field_parameter_state(self.field_parameters):
for chunk in parallel_objects(self.data_source.chunks([], "io", local_only=True)):
if not _units_initialized:
self._initialize_projected_units(fields, chunk)
_units_initialized = True
self._handle_chunk(chunk, fields, tree)
... The iterable objects pass to The following two changes in the for loop will give the same results.
Conclusion
P.S. |
Please do take your time. They both are calling # yt/data_objects/selection_objects/data_selection_objects.py
class YTSelectionContainer(YTDataContainer, ParallelAnalysisInterface):
def get_data(self, fields=None):
...
# The _read method will figure out which fields it needs to get from
# disk, and return a dict of those fields along with the fields that
# need to be generated.
read_fluids, gen_fluids = self.index._read_fluid_fields(
fluids, self, self._current_chunk
)
... # yt/geometry/geometry_handler.py
class Index(ParallelAnalysisInterface, abc.ABC):
def _read_fluid_fields(self, fields, dobj, chunk=None):
...
fields_to_return = self.io._read_fluid_selection(
self._chunk_io(dobj), selector, fields_to_read, chunk_size
)
...
# yt/frontends/libyt/io.py
class IOHandlerlibyt(BaseIOHandler):
def _read_fluid_selection(self, chunks, selector, fields, size):
...
for field in fields:
offset = 0
ftype, fname = field
for chunk in chunks:
for g in chunk.objs:
if field_list[fname]["field_define_type"] == "cell-centered":
data_convert = self.grid_data[g.id][fname][:, :, :]
... |
Tasks
OffAxisProjectionPlot
SlicePlot
OffAxisSlicePlot
Halo Analysis
Isocontours
volume_render
only if size of MPI is even.ParticlePlot
ParticleProjectionPlot
LinePlot
yt
operation should be inside if suite:if yt.is_root():
clause. Ask Non-Local Grid From Other MPI Rank #26if yt.is_root()
. Plot Modifications / Annotations Test #35Notes
Halo Analysis
andIsocontours
have not been tested yet.The text was updated successfully, but these errors were encountered: