Hi Ben,

I misunderstood your problem.  sigma expects a number and not a 
function, as you discovered.

If I modify this function as follows, your code works because sigma_func 
gets evaluated:

(define (make-polarizability-from-conductivity sigma_func omega_in)
   (make polarizability
     (omega omega_in)
     (gamma omega_in)
     (delta-epsilon (/ 1 omega_in))
     (sigma (sigma_func 42))
     )
   )

You proably want to evaluate what you want sigma to be higher up in 
make-mat-from-eps-and-sigma.  Instead of calling 
make-polarizability-from-conductivity and passing it a function, you 
only pass a single sigma value.

Kind Regards,
Matt




> As it happens, I've already read all these threads.  I was specifically aware 
> of
> the need to assign the polarizability I used to a simple-dielectric object.  
> For
> that reason, I wrote a function "initialize-polarizability", which assigns 
> that
> polarizability to a size-0 object at infinity, as suggested by Dr. Johnson in
> one of those threads.
>
> - --Ben

_______________________________________________
meep-discuss mailing list
meep-discuss@ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

Reply via email to