[yt-svn] commit/yt: 2 new changesets
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Mon May 19 02:59:43 PDT 2014
2 new commits in yt:
https://bitbucket.org/yt_analysis/yt/commits/2357bb6a26c4/
Changeset: 2357bb6a26c4
Branch: yt-3.0
User: MatthewTurk
Date: 2014-05-14 13:57:58
Summary: Enabling particle streams to have multiple particle types.
Affected #: 1 file
diff -r 4d1488b8fa476b1e6f5cb90c16312fce75abe34e -r 2357bb6a26c4f6f9d3870960b586f1698352289b yt/frontends/stream/io.py
--- a/yt/frontends/stream/io.py
+++ b/yt/frontends/stream/io.py
@@ -134,24 +134,29 @@
def _initialize_index(self, data_file, regions):
# self.fields[g.id][fname] is the pattern here
- pos = np.column_stack(self.fields[data_file.filename][
- ("io", "particle_position_%s" % ax)]
- for ax in 'xyz')
- if np.any(pos.min(axis=0) < data_file.pf.domain_left_edge) or \
- np.any(pos.max(axis=0) > data_file.pf.domain_right_edge):
- raise YTDomainOverflow(pos.min(axis=0), pos.max(axis=0),
- data_file.pf.domain_left_edge,
- data_file.pf.domain_right_edge)
- regions.add_data_file(pos, data_file.file_id)
- morton = compute_morton(
- pos[:,0], pos[:,1], pos[:,2],
- data_file.pf.domain_left_edge,
- data_file.pf.domain_right_edge)
- return morton
+ morton = []
+ for ptype in self.pf.particle_types_raw:
+ pos = np.column_stack(self.fields[data_file.filename][
+ (ptype, "particle_position_%s" % ax)]
+ for ax in 'xyz')
+ if np.any(pos.min(axis=0) < data_file.pf.domain_left_edge) or \
+ np.any(pos.max(axis=0) > data_file.pf.domain_right_edge):
+ raise YTDomainOverflow(pos.min(axis=0), pos.max(axis=0),
+ data_file.pf.domain_left_edge,
+ data_file.pf.domain_right_edge)
+ regions.add_data_file(pos, data_file.file_id)
+ morton.append(compute_morton(
+ pos[:,0], pos[:,1], pos[:,2],
+ data_file.pf.domain_left_edge,
+ data_file.pf.domain_right_edge))
+ return np.concatenate(morton)
def _count_particles(self, data_file):
- npart = self.fields[data_file.filename]["io", "particle_position_x"].size
- return {'io': npart}
+ pcount = {}
+ for ptype in self.pf.particle_types_raw:
+ d = self.fields[data_file.filename]
+ pcount[ptype] = d[ptype, "particle_position_x"].size
+ return pcount
def _identify_fields(self, data_file):
return self.fields[data_file.filename].keys(), {}
https://bitbucket.org/yt_analysis/yt/commits/42232180162b/
Changeset: 42232180162b
Branch: yt-3.0
User: xarthisius
Date: 2014-05-19 11:59:38
Summary: Merged in MatthewTurk/yt/yt-3.0 (pull request #902)
Enabling particle streams to have multiple particle types.
Affected #: 1 file
diff -r 9ef0e11c216af78e74e28aa4003139d7ce76a653 -r 42232180162bb8d2c5280b874f6ba4c17e4bfe2f yt/frontends/stream/io.py
--- a/yt/frontends/stream/io.py
+++ b/yt/frontends/stream/io.py
@@ -134,24 +134,29 @@
def _initialize_index(self, data_file, regions):
# self.fields[g.id][fname] is the pattern here
- pos = np.column_stack(self.fields[data_file.filename][
- ("io", "particle_position_%s" % ax)]
- for ax in 'xyz')
- if np.any(pos.min(axis=0) < data_file.pf.domain_left_edge) or \
- np.any(pos.max(axis=0) > data_file.pf.domain_right_edge):
- raise YTDomainOverflow(pos.min(axis=0), pos.max(axis=0),
- data_file.pf.domain_left_edge,
- data_file.pf.domain_right_edge)
- regions.add_data_file(pos, data_file.file_id)
- morton = compute_morton(
- pos[:,0], pos[:,1], pos[:,2],
- data_file.pf.domain_left_edge,
- data_file.pf.domain_right_edge)
- return morton
+ morton = []
+ for ptype in self.pf.particle_types_raw:
+ pos = np.column_stack(self.fields[data_file.filename][
+ (ptype, "particle_position_%s" % ax)]
+ for ax in 'xyz')
+ if np.any(pos.min(axis=0) < data_file.pf.domain_left_edge) or \
+ np.any(pos.max(axis=0) > data_file.pf.domain_right_edge):
+ raise YTDomainOverflow(pos.min(axis=0), pos.max(axis=0),
+ data_file.pf.domain_left_edge,
+ data_file.pf.domain_right_edge)
+ regions.add_data_file(pos, data_file.file_id)
+ morton.append(compute_morton(
+ pos[:,0], pos[:,1], pos[:,2],
+ data_file.pf.domain_left_edge,
+ data_file.pf.domain_right_edge))
+ return np.concatenate(morton)
def _count_particles(self, data_file):
- npart = self.fields[data_file.filename]["io", "particle_position_x"].size
- return {'io': npart}
+ pcount = {}
+ for ptype in self.pf.particle_types_raw:
+ d = self.fields[data_file.filename]
+ pcount[ptype] = d[ptype, "particle_position_x"].size
+ return pcount
def _identify_fields(self, data_file):
return self.fields[data_file.filename].keys(), {}
Repository URL: https://bitbucket.org/yt_analysis/yt/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
More information about the yt-svn
mailing list