Runtime error when plot derived field
Hi everyone: I met trouble when I tried to plot derived vorticity field in yt. The dataset is written in AMRex form (multiple layers). However, it will call Runtimeerror raised by "in _fill_fields" in construction_data_containers.py. I will be appreciate if anyone can give me some suggestions! -------------------------------------------------------------------------------------------------------------------------------------------- Here is python command in brief (ds is dataset, u,v are velocity component in x, y direction, vor_z is Vorticity in z direction): for ds in ts.piter(): ds.periodicity=(False,False,False) u_gradient = ds.add_gradient_fields(("boxlib","u_mixt")) v_gradient = ds.add_gradient_fields(("boxlib","v_mixt")) derived_fields = [ # field name, units, displayname ('vort_z', '1 / cm', 'Vorticity in z direction'), ] for name, unitstr, dispname in derived_fields: ds.add_field( ('boxlib', name), units = unitstr, function = eval(name + '_func'), sampling_type = 'cell', display_name = dispname ) chang =0.112 kuan =0.056 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.48,0.028,0.01],'cm')) slc.save() ------------------------------------------------------------------------------------------------------------------------ Here is the error info: yt : [ERROR ] RuntimeError: 1005 application called MPI_Abort(MPI_COMM_WORLD, 1) - process 4 1006 File "vorfield.py", line 90, in <module> 1007 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.46,0.028,0.01],'cm')) 1008 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1986, in SlicePlot 1009 return AxisAlignedSlicePlot(ds, normal, fields, *args, **kwargs) 1010 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1282, in __init__ 1011 slc.get_data(fields) 1012 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1583, in get_data 1013 self._generate_fields(fields_to_generate) 1014 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1603, in _generate_fields 1015 fd = self._generate_field(field) 1016 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 293, in _generate_field 1017 tr = self._generate_fluid_field(field) 1018 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 311, in _generate_fluid_field 1019 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones) 1020 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 341, in _generate_spatial_fluid 1021 gz[field][ngz:-ngz, ngz:-ngz, ngz:-ngz], 1022 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 256, in __getitem__ 1023 self.get_data(f) 1024 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 691, in get_data 1025 if len(fill) > 0: self._fill_fields(fill) 1026 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 1060, in _fill_fields 1027 raise RuntimeError best wishes, He Yifeng
Hi He Yifeng, I believe, but I'm not totally sure, that the issue might be in that you require a ValidateSpatial "validator" for the derived field. Would it be possible to show the source code of the functions you're using? On Thu, May 12, 2022 at 5:55 AM <hyf@stu.pku.edu.cn> wrote:
Hi everyone:
I met trouble when I tried to plot derived vorticity field in yt.
The dataset is written in AMRex form (multiple layers).
However, it will call Runtimeerror raised by "in _fill_fields" in construction_data_containers.py.
I will be appreciate if anyone can give me some suggestions!
-------------------------------------------------------------------------------------------------------------------------------------------- Here is python command in brief (ds is dataset, u,v are velocity component in x, y direction, vor_z is Vorticity in z direction):
for ds in ts.piter(): ds.periodicity=(False,False,False) u_gradient = ds.add_gradient_fields(("boxlib","u_mixt")) v_gradient = ds.add_gradient_fields(("boxlib","v_mixt"))
derived_fields = [ # field name, units, displayname ('vort_z', '1 / cm', 'Vorticity in z direction'), ] for name, unitstr, dispname in derived_fields: ds.add_field( ('boxlib', name), units = unitstr, function = eval(name + '_func'), sampling_type = 'cell', display_name = dispname )
chang =0.112 kuan =0.056 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.48,0.028,0.01],'cm')) slc.save() ------------------------------------------------------------------------------------------------------------------------ Here is the error info: yt : [ERROR ] RuntimeError: 1005 application called MPI_Abort(MPI_COMM_WORLD, 1) - process 4 1006 File "vorfield.py", line 90, in <module> 1007 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.46,0.028,0.01],'cm')) 1008 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1986, in SlicePlot 1009 return AxisAlignedSlicePlot(ds, normal, fields, *args, **kwargs) 1010 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1282, in __init__ 1011 slc.get_data(fields) 1012 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1583, in get_data 1013 self._generate_fields(fields_to_generate) 1014 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1603, in _generate_fields 1015 fd = self._generate_field(field) 1016 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 293, in _generate_field 1017 tr = self._generate_fluid_field(field) 1018 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 311, in _generate_fluid_field 1019 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones) 1020 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 341, in _generate_spatial_fluid 1021 gz[field][ngz:-ngz, ngz:-ngz, ngz:-ngz], 1022 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 256, in __getitem__ 1023 self.get_data(f) 1024 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 691, in get_data 1025 if len(fill) > 0: self._fill_fields(fill) 1026 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 1060, in _fill_fields 1027 raise RuntimeError
best wishes,
He Yifeng _______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org https://mail.python.org/mailman3/lists/yt-users.python.org/ Member address: matthewturk@gmail.com
Hello Matthew Turk, I forget to put the function used on: def vort_z_func(field, data): return ( + data['boxlib', 'v_mixt_gradient_x'] - data['boxlib', 'u_mixt_gradient_y'] ) By the way, I am sorry that I am not familiar with the term [ ValidateSpatial "validator" ] best wishes, He Yifeng From: Matthew Turk <matthewturk@gmail.com> Date: 2022-05-12 20:27:19 To: Discussion of the yt analysis package <yt-users@python.org> Subject: [yt-users] Re: Runtime error when plot derived field>Hi He Yifeng,
I believe, but I'm not totally sure, that the issue might be in that you require a ValidateSpatial "validator" for the derived field. Would it be possible to show the source code of the functions you're using?
On Thu, May 12, 2022 at 5:55 AM <hyf@stu.pku.edu.cn> wrote:
Hi everyone:
I met trouble when I tried to plot derived vorticity field in yt.
The dataset is written in AMRex form (multiple layers).
However, it will call Runtimeerror raised by "in _fill_fields" in construction_data_containers.py.
I will be appreciate if anyone can give me some suggestions!
-------------------------------------------------------------------------------------------------------------------------------------------- Here is python command in brief (ds is dataset, u,v are velocity component in x, y direction, vor_z is Vorticity in z direction):
for ds in ts.piter(): ds.periodicity=(False,False,False) u_gradient = ds.add_gradient_fields(("boxlib","u_mixt")) v_gradient = ds.add_gradient_fields(("boxlib","v_mixt"))
derived_fields = [ # field name, units, displayname ('vort_z', '1 / cm', 'Vorticity in z direction'), ] for name, unitstr, dispname in derived_fields: ds.add_field( ('boxlib', name), units = unitstr, function = eval(name + '_func'), sampling_type = 'cell', display_name = dispname )
chang =0.112 kuan =0.056 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.48,0.028,0.01],'cm')) slc.save() ------------------------------------------------------------------------------------------------------------------------ Here is the error info: yt : [ERROR ] RuntimeError: 1005 application called MPI_Abort(MPI_COMM_WORLD, 1) - process 4 1006 File "vorfield.py", line 90, in <module> 1007 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.46,0.028,0.01],'cm')) 1008 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1986, in SlicePlot 1009 return AxisAlignedSlicePlot(ds, normal, fields, *args, **kwargs) 1010 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1282, in __init__ 1011 slc.get_data(fields) 1012 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1583, in get_data 1013 self._generate_fields(fields_to_generate) 1014 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1603, in _generate_fields 1015 fd = self._generate_field(field) 1016 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 293, in _generate_field 1017 tr = self._generate_fluid_field(field) 1018 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 311, in _generate_fluid_field 1019 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones) 1020 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 341, in _generate_spatial_fluid 1021 gz[field][ngz:-ngz, ngz:-ngz, ngz:-ngz], 1022 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 256, in __getitem__ 1023 self.get_data(f) 1024 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 691, in get_data 1025 if len(fill) > 0: self._fill_fields(fill) 1026 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 1060, in _fill_fields 1027 raise RuntimeError
best wishes,
He Yifeng _______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org https://mail.python.org/mailman3/lists/yt-users.python.org/ Member address: matthewturk@gmail.com
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org https://mail.python.org/mailman3/lists/yt-users.python.org/ Member address: hyf@stu.pku.edu.cn
Hi Matthew Turk, Thank you for your reply. I probably know what "validator" is. In this case, it is just a derived field without filtering process (i.e., there is no "validator" ) I think there are some conflictions raised in the form of the output data form (examples in data.zip (attachment)). The data is output in AMRex form and there are total 3 layers (level 0, level 1, level 2). I will be appreciate if you can give me some suggestions! best wishes, He Yifeng 发件人:"贺一峰" <hyf@stu.pku.edu.cn> 发送日期:2022-05-12 20:39:42 收件人:Discussion of the yt analysis package <yt-users@python.org> 主题:[yt-users] Re: Runtime error when plot derived field Hello Matthew Turk, I forget to put the function used on: def vort_z_func(field, data): return ( + data['boxlib', 'v_mixt_gradient_x'] - data['boxlib', 'u_mixt_gradient_y'] ) By the way, I am sorry that I am not familiar with the term [ ValidateSpatial "validator" ] best wishes, He Yifeng From: Matthew Turk <matthewturk@gmail.com> Date: 2022-05-12 20:27:19 To: Discussion of the yt analysis package <yt-users@python.org> Subject: [yt-users] Re: Runtime error when plot derived field>Hi He Yifeng,
I believe, but I'm not totally sure, that the issue might be in that you require a ValidateSpatial "validator" for the derived field. Would it be possible to show the source code of the functions you're using?
On Thu, May 12, 2022 at 5:55 AM <hyf@stu.pku.edu.cn> wrote:
Hi everyone:
I met trouble when I tried to plot derived vorticity field in yt.
The dataset is written in AMRex form (multiple layers).
However, it will call Runtimeerror raised by "in _fill_fields" in construction_data_containers.py.
I will be appreciate if anyone can give me some suggestions!
-------------------------------------------------------------------------------------------------------------------------------------------- Here is python command in brief (ds is dataset, u,v are velocity component in x, y direction, vor_z is Vorticity in z direction):
for ds in ts.piter(): ds.periodicity=(False,False,False) u_gradient = ds.add_gradient_fields(("boxlib","u_mixt")) v_gradient = ds.add_gradient_fields(("boxlib","v_mixt"))
derived_fields = [ # field name, units, displayname ('vort_z', '1 / cm', 'Vorticity in z direction'), ] for name, unitstr, dispname in derived_fields: ds.add_field( ('boxlib', name), units = unitstr, function = eval(name + '_func'), sampling_type = 'cell', display_name = dispname )
chang =0.112 kuan =0.056 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.48,0.028,0.01],'cm')) slc.save() ------------------------------------------------------------------------------------------------------------------------ Here is the error info: yt : [ERROR ] RuntimeError: 1005 application called MPI_Abort(MPI_COMM_WORLD, 1) - process 4 1006 File "vorfield.py", line 90, in <module> 1007 slc = yt.SlicePlot(ds, 'z', 'vort_z', width=((chang,'cm'),(kuan,'cm')),center=([0.46,0.028,0.01],'cm')) 1008 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1986, in SlicePlot 1009 return AxisAlignedSlicePlot(ds, normal, fields, *args, **kwargs) 1010 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/visualization/plot_window.py", line 1282, in __init__ 1011 slc.get_data(fields) 1012 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1583, in get_data 1013 self._generate_fields(fields_to_generate) 1014 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 1603, in _generate_fields 1015 fd = self._generate_field(field) 1016 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 293, in _generate_field 1017 tr = self._generate_fluid_field(field) 1018 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 311, in _generate_fluid_field 1019 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones) 1020 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 341, in _generate_spatial_fluid 1021 gz[field][ngz:-ngz, ngz:-ngz, ngz:-ngz], 1022 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/data_containers.py", line 256, in __getitem__ 1023 self.get_data(f) 1024 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 691, in get_data 1025 if len(fill) > 0: self._fill_fields(fill) 1026 File "/WORK/anaconde/envs/test/lib/python3.8/site-packages/yt/data_objects/construction_data_containers.py", line 1060, in _fill_fields 1027 raise RuntimeError
best wishes,
He Yifeng _______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org https://mail.python.org/mailman3/lists/yt-users.python.org/ Member address: matthewturk@gmail.com
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org https://mail.python.org/mailman3/lists/yt-users.python.org/ Member address: hyf@stu.pku.edu.cn
participants (3)
-
hyf@stu.pku.edu.cn
-
Matthew Turk
-
贺一峰