ryanhao | 3 Sep 05:44 2009

define k-path for unconventional waveguide in MPB

Dear Prof. Johnson and MPB user,
 
For a noraml W1 waveguide, the K-path in MPB is defined like this:
=============================================
(define Gamma (vector3 0 0 0))
(define K' (lattice->reciprocal (vector3 0.5 0 0)))
(set! k-points (interpolate 50 (list Gamma K')))
==============================================
      but how about the repeated unit takes 2 lattice constant? how to define the K-path? see attached.
       I have tried to decrease the reciprocal lattice to 1/2 of its previous value, but the result is wrong. 
 
      I have rather bad knowledge for reciprocal space. I read your book but I can not solve it. please help me. 
      Thank you.
 
Sincerely
                   
                     Ran   
Attachment (epsilon.png): application/octet-stream, 1704 bytes
_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
Steven G. Johnson | 3 Sep 06:23 2009
Picon

Re: How to define and calculate the surface mode in 2D-PC of trianular lattice?

One difficulty with your computational cell is that you actually have two surfaces -- one on the left and one on the right.  Remember that there are periodic boundary conditions.

The solution is to intentionally have two equal surfaces that are mirror symmetric along the y direction, and then use run-yeven to avoid getting the same mode twice.

That is, have a computational cell like:

    --> y direction

|                                  o      o      o      o      o      o      o      o      o                                  |
|                              o      o      o      o      o      o      o      o      o      o                              |
|                                  o      o      o      o      o      o      o      o      o                                  |
                         left surface                                                  right surface

When you simulate this structure, if there is a surface state at the left surface there will also be the same surface state at the right surface, by symmetry.    The exponential tails of these surface states will cause them to couple into even (+    +) and odd (+     -) combinations with slightly different frequencies.  If the supercell size is big enough, however, this coupling is negligible (decreasing exponentially with the size of the crystal), so essentially you have two copies of the same mode.  To get just one, you use run-yeven (or run-yodd, it doesn't matter), which will pick out one of the linear combinations.

Steven


On Sep 2, 2009, at 10:39 PM, Chad Huskow wrote:
Dear Steven and MPB users,

        I have solved the problem about the surface mode in 2D-PC triangular structure of air holes in dielectric background. You can see my PC structure in the attach. My problem is the surface mode along Gamma-M direction (by changing the surface termination along Gamma-M). In that case, the surface termination factor C=0.5. I want to investigate the surface band structures for various the surface termination factors.

 

I don't know how to define that structure MPB.


_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
yogesh | 3 Sep 21:38 2009
Picon

Regarding number of interpolating points

Dear Steven and MPB users,

              I have a doubt on limitation on the number of interpolating k-points.
In particular (kgrid -frequency mapping), increasing the nkx and nky to above 100 result in linmin failure.

is there any limitation on maximum limit of nkx and nky?
                       
With regards,
N. Yogesh.

_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
Steven G. Johnson | 3 Sep 22:34 2009
Picon

Re: Regarding number of interpolating points

No, there is no limitation in principle.

In practice, MPB occasionally gets stuck because of rounding errors,  
something I keep meaning to fix, but haven't gotten around to it  
because usually just re-running it works.

Steven

On Sep 3, 2009, at 3:38 PM, yogesh wrote:

> Dear Steven and MPB users,
>
>               I have a doubt on limitation on the number of  
> interpolating k-points.
> In particular (kgrid -frequency mapping), increasing the nkx and nky  
> to above 100 result in linmin failure.
>
> is there any limitation on maximum limit of nkx and nky?
>
> With regards,
> N. Yogesh.
> _______________________________________________
> mpb-discuss mailing list
> mpb-discuss <at> ab-initio.mit.edu
> http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
Steven G. Johnson | 3 Sep 22:40 2009
Picon

Re: define k-path for unconventional waveguide in MPB


On Sep 2, 2009, at 11:44 PM, ryanhao wrote:
> ==============================================
>       but how about the repeated unit takes 2 lattice constant? how  
> to define the K-path? see attached.
>        I have tried to decrease the reciprocal lattice to 1/2 of its  
> previous value, but the result is wrong.

It's hard to answer your question without knowing what your lattice  
vectors are.

If your lattice vectors (in geometry-lattice) are orthogonal, with the  
first lattice vector oriented along the direction of the waveguide, then

	(set! k-points (interpolate 50 (list (vector3 0) (vector3 0.5))))

is correct: the edge of the Brillouin zone is 1/2 of the first  
reciprocal lattice vector.  (Note that by doubling your period in the  
propagation direction, you halve the first reciprocal lattice vector,  
halving the size of the Brillouin zone, so the band diagram is  
"folded" in two compared to the usual W1 waveguide.)

It's only if you have non-orthogonal lattice vectors that things  
become trickier.

Steven
Juan Pablo Vasco | 4 Sep 19:56 2009
Picon

numerical stability of mpb and meep

Hi to all,

I have a question about mpb... and meep too:
¿how is the behavior of the convergence when i put a very large resolution?
¿is mpb numerically stable for very high resolutions?
if i put a resolution of 20000 for a one dimensional system, ¿should i obtain a best result when i put a resolution of 25000?

The same questions for meep...

thanks a lot

Att: Juan Pablo Vasco

_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
Steven G. Johnson | 5 Sep 06:38 2009
Picon

Re: numerical stability of mpb and meep


On Sep 4, 2009, at 1:56 PM, Juan Pablo Vasco wrote:
> I have a question about mpb... and meep too:
> ¿how is the behavior of the convergence when i put a very large  
> resolution?

It varies between linear and quadratic with resolution, depending on  
the structure (e.g. sharp corners reduce the convergence rate).

> ¿is mpb numerically stable for very high resolutions?

Yes.

>
> if i put a resolution of 20000 for a one dimensional system, ¿should  
> i obtain a best result when i put a resolution of 25000?

What do you mean by "best result"?  Increasing the resolution should  
generally increase the accuracy.

Steven
Julien Arlandis | 14 Sep 18:25 2009
Picon

mpb : how to duplicate a geometry object

Hello,

With (set! geometry (list (make cylinder
                        (center 0 0 0) (radius 0.2) (height infinity)
                        (material (make dielectric (epsilon 2))))))
how can I duplicate this structure using
(geometric-object-duplicates shift-vector min-multiple max-multiple 
obj)? What is obj exactly?
ryanhao | 15 Sep 03:31 2009

Re: mpb : how to duplicate a geometry object

Hello,
 
       obj is the object you have drawn, in your case, it is:
      (make cylinder (center 0 0 0) (radius 0.2) (height infinity) (material (make dielectric (epsilon 2))))
                        (center 0 0 0) (radius 0.2) (height infinity)
                    
  
------------------ Original ------------------
From:  "Julien Arlandis"<julien.arlandis <at> laposte.net>;
Date:  Tue, Sep 15, 2009 00:25 AM
To:  "mpb-discuss"<mpb-discuss <at> ab-initio.mit.edu>;
Subject:  [MPB-discuss] mpb : how to duplicate a geometry object
 
Hello,


With (set! geometry (list (make cylinder
                        (center 0 0 0) (radius 0.2) (height infinity)
                        (material (make dielectric (epsilon 2))))))
how can I duplicate this structure using
(geometric-object-duplicates shift-vector min-multiple max-multiple
obj)? What is obj exactly?


_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss
Julien Arlandis | 15 Sep 08:48 2009
Picon

Re: mpb : how to duplicate a geometry object

ryanhao a crit :
> Hello
>  
>        obj is the object you have drawn, in your case, it is:
>       (make cylinder (center 0 0 0) (radius 0.2) (height 
> infinity) (material (make dielectric (epsilon 2))))
>                         (center 0 0 0) (radius 0.2) (height infinity)

Hello,

I write :

(define air (make dielectric (epsilon 12)))

(define whole1 (make cylinder (center -0.2 0 0) (radius 0.06) (height 
infinity) (material air) ))

(define whole2 (make cylinder (center 0.3 0 0) (radius 0.04) (height 
infinity) (material air) ))

(set! geometry (list whole1 whole2))

=> 2 wholes

If I add :

(geometric-object-duplicates (vector3 1 0 0) 1 10 whole1))

=> no change...

_______________________________________________
mpb-discuss mailing list
mpb-discuss <at> ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss

Gmane