加快scipy quad集成(跳过check_bounds和_asarray_validated?)

时间:2019-03-29 14:05:45

标签: python scipy quad

对于不同的积分(x和y值),我打电话给@Override public void handle(ActionEvent event) { listLayout.getChildren().removeAll(result); Collections.sort(listOfCars, ListYears.yearCom); for (int i = 0; i < listOfCars.size(); i++) { newCarsListings = listOfCars.get(i).toString(); result = new Label(newCarsListings); result.setTranslateX(20); result.setTranslateY(-40); listLayout.getChildren().addAll(result); } } 大约500次。 这总共需要46秒。 但是,scipy.integrate.quad单独使用了19秒,_evaluate._check_bounds占用了另外11秒。

我可以以某种方式跳过这些检查并在16秒内执行相同的操作吗?

2 个答案:

答案 0 :(得分:0)

如果在python中为qagpe编写自己的包装器,则可能会显着提高性能。 scipy.integrate.quad环绕Quadpackqagpe子例程。

关于开发自己的包装器并在Python中调用共享库。这对link很有帮助。

答案 1 :(得分:0)

quadpy(我的项目之一)对域和函数值的计算进行矢量化处理,因此与多次调用scipy.quad相比,应该可以大大提高速度。