About self defined eps-func

Simon Huskier <[email protected]> Wed, 11 Jul 2012 22:33:44 +0800
Newsgroups gmane.comp.science.photonic-bands
Message-ID <CAF=cZjSOmU_9VoZssyQq3r_NotMY06rvunozfG6NEpQtrdqawQ@mail.gmail.com>
Dear Steven and MPB users,

Following Dr. Steven's suggestion on the following thread,
http://www.mail-archive.com/[email protected]/msg00543.html

I defined a eps-func as following:

(define (eps-func p)
>    (let* ((p (lattice->cartesian))
>              (x (vector3-x p))
>              (y (vector3-y p))
>              (z (vector3-z p)))
> (if (> sin(* 2 pi x y z) 0)
>                 (make dielectric
>                         (epsilon 12))
>                 (make dielectric
>                         (epsilon 1)))))


When I run the mpb program, there is an error.

> *Initializing dielectric function...
> ERROR: Wrong number of arguments to #<procedure lattice->cartesian (x)>*


Although the suggestion is obvious (wrong number of arguments), it is
beyond my capability to fix it right now. I checked let* instruction
and lattice->cartesian function, and I also carefully matched the ')'s.
 Any suggestion would be appreciated.

Thanks.

Best Regards,

Simon

_______________________________________________
mpb-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss