Dear Steven:
    Thank you for your reply.
    I tried a few times and found that although I can get around the same 
resonant wavelengths in these two cases, the field pattern fr om the stretched 
coordination is apparently wrong. It seems to result from the PML. The Er field 
locate in the PML but none in the cavity, which is VCSEL.
Ep is in the cavity but doesn't show standing wave pattern.

The part of the script is shown in below:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%

(define lam (/ 1 0.00102220221092656)) ; free space wavelength (meters)
(set! dimensions CYLINDRICAL)
(set-param! m 1)



(set-param! resolution 0.2)

(define-param str_r 4 ) ; the ratio of epsilon in z-axis to epsilon in r-axis


; Geometry


; Geometry
(define-param Rd 500 ) ; Radius of
 VCSEL
(define-param R_ap 250 ) ; Radius of Aperture


(define-param No_Cut_BDBR 0);the number of removal periods for bottom DBR
(define-param No_BDBR (- 37 No_Cut_BDBR));the number of periods of bottom DBR
(define-param No_TDBR 22);the number of periods of top DBR


(define-param L (- 9775 (* No_Cut_BDBR 152.9)) ) ; the total height of VCSEL
(define-param sub_th 1400 ) ; the substrate thickness
(define-param air_th 2000 ) ; the air thickness

(define-param dpmlz 400 ) ; thickness of PML in z
(define-param dpmlx 300 ) ; thickness of PML in xy

; the distance between object and PML
(define-param padx 600) ; to fit the length equal to 800nm in the x direction
(define-param pady 500) ; to fit the length equal to 800nm in the y direction
(define-param padz 550) ; to fit the length equal to 176nm in the z direction


; lattice size
(define-param sr (+ Rd sin_th padx ) );
(define-param sz
 (+ L Rm sub_th air_th) ) ;
(set! geometry-lattice (make lattice (size sr no-size sz)))

(define
 AlGaAs33_1 (make dielectric (epsilon-diag (* 3.46 3.46)  (* 3.46 3.46) 
(* 3.46 3.46 str_r)) (mu-diag 1 1 str_r)));Al0.12Ga0.88As


(set! pml-layers (list (make pml (thickness dpmlz) ))) 

The rest is to set up the geometry, source and simulation

%%%%%%%%%%%
Without using anisotropic \epsilon and mu, the radius of VCSEL is 1000 (along r 
direction, resolution 0.2). 
In the stretched coordination, the resolution in r direction should be 
equivalently to 0.1 so there are 100 grids. But the resolution is still 
0.2 in the script, therefore I set the radius as 500.

Do you have suggestions on improving it?

Thank you.

Adrian

--- 11/1/3 (一),Steven G. Johnson <stevenj....@gmail.com> 寫道:

寄件者: Steven G. Johnson <stevenj....@gmail.com>
主旨: Re: [Meep-discuss] RE: Stretching coordination in cylindrical coordination
收件者: "meep-discuss Discuss" <meep-discuss@ab-initio.mit.edu>
日期: 2011年1月3日,一,下午12:25

On Dec 26, 2010, at 5:36 PM, adrian wrote:    I'd like to produce different 
resolutions  in different directions in cylindrical coordination with the 
certain azimuthal number through coordination stretching.

    I read through "Coordinate Transformation & Invariance in Electromagnetism" 
but the result from stretching coordination is not consistent with that without 
stretching coordination.

   For example, original resolution is 0.1 \epsilon=12.5.
  Now I'd like to have the resolution along r as 0.05 and along z as 0.1, 
respectively, then new \epsilon I used is
    epsilon-diag ( (\ 12.5 2) (\ 12.5 2) 12.5) (the resolution is still 0.1)
  But the output field is black.

 If I tried    epsilon-diag ( (* 12.5 2) (* 12.5 2) 12.5)
  The output field is not consistent with the original one.
  Maybe I misunderstood that paper but I wonder if anyone has this experience 
to share with.

If I understand what you are doing correctly, your desired Jacobian matrix is 
(in Matlab notation):
        J = diag(0.5, 0.5, 1)
with det(J) = 0.25, corresponding to keeping z fixed and dividing x and y by 2.
In this case, your original (scalar) epsilon and mu should get multiplied by
        J * J' / det(J)         = diag(1,1,4)
So, your new epsilon should be diag(12.5, 12.5, 12.5 * 4) and your new mu 
should be diag(1,1,4).
Steven
-----內含下列夾帶檔案-----

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


      

_______________________________________________
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