gpt4 book ai didi

scheme - 这个方案错误告诉我什么?

转载 作者:行者123 更新时间:2023-12-02 22:17:30 27 4
gpt4 key购买 nike

存在一个名为 meep 的电磁模拟器,它以诡计解释器的形式提供前端。模拟器由一堆方案宏组成。

我想弄清楚以下错误的含义。代码取自教程。当我将教程包装在一个过程中时,出现运行时错误,而且我不确定解释器 (guile) 告诉我什么。

代码无效

(define diffthick
(lambda (n) ; n doesn nothing
(
(set! geometry-lattice (make lattice (size 16 8 no-size)))
(set! geometry (list
(make block (center 0 0) (size infinity 1 infinity)
(material (make dielectric (epsilon 12))))))
(set! sources (list
(make source
(src (make continuous-src (frequency 0.15)))
(component Ez)
(center -7 0))))
(set! pml-layers (list (make pml (thickness 1.0))))
(set! resolution 10)
(run-until 200
(at-beginning output-epsilon)
(at-end output-efield-z))
)
)
)
(diffthick 3)

工作代码(无程序)

(set! geometry-lattice (make lattice (size 16 8 no-size)))
(set! geometry (list
(make block (center 0 0) (size infinity 1 infinity)
(material (make dielectric (epsilon 12))))))
(set! sources (list
(make source
(src (make continuous-src (frequency 0.15)))
(component Ez)
(center -7 0))))

(set! pml-layers (list (make pml (thickness 1.0))))
(set! resolution 10)
(run-until 200
(at-beginning output-epsilon)
(at-end output-efield-z))

错误

creating output file "./eps-000000.00.h5"...
creating output file "./ez-000200.00.h5"...
run 0 finished at t = 200.0 (4000 timesteps)

Backtrace:
In standard input:
21: 0* [diffthick 3]
3: 1 [#<unspecified> #<unspecified> #<unspecified> ...]

standard input:3:5: In expression ((set! geometry-lattice #) (set! geometry #) (set! sources #) ...):
standard input:3:5: Wrong type to apply: #<unspecified>
ABORT: (misc-error)

工作

-----------
creating output file "./eps-000000.00.h5"...
creating output file "./ez-000200.00.h5"...
run 0 finished at t = 200.0 (4000 timesteps)

在一天结束的时候,我觉得有些事情被评估了两次。但我不确定那是什么东西。

最佳答案

错误表明代码正在尝试应用 (set! geometry-lattice #) 的结果好像它是一个函数,但是 set!结果 #<unspecified>反而。发生这种情况是因为 set! 系列s 包裹在括号中。

你可能正在寻找

(begin
(set! geometry-lattice ...)
...
(run-until ...))

或者干脆去掉那对额外的括号,因为 lambda 体被​​隐式包裹在 begin 中.

关于scheme - 这个方案错误告诉我什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14225173/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com