2

我需要一点帮助来创建一个派生场,它将返回重力势的负梯度,因此重力加速度。我试过这样的事情:

@derived_field(name = "gradient_gravpot", units = " cm/s**2")
def _gradient (field, data):
        G = add_gradient_fields(("gas"," gravitational_potental"))
        return (- data["gravitational_potential_gradient_x"])

我得到了这个错误

   NameError: global name 'add_gradient_fields' is not defined

请建议我定义该字段的正确方法。谢谢

4

1 回答 1

1

看起来您在 yt 项目邮件列表上得到了答案。也就是说,我将在这里重复这add_gradient_fields是该类的一个方法Dataset,因此您需要在加载的数据集上调用它。例如:

ds = yt.load('path/to/dataset')
ds.add_gradient_fields(('gas', 'gravitational_potential'))
于 2016-06-24T13:09:58.367 回答