여러개의 dipole 을 이용하여 array 나 group 을 만들 수 있나요?

array
dipole
group

#1

여러개의 dipole 을 평면 또는 구형의 array 로 만들고자 합니다. 이를 위해서 어떻게 script 를 짜면 좋을까요?


#2

많은 dipole을 이용한 array 나 group 을 만들기 위해서는 ‘adddipole’ 이라는 스크립트를 이용해 많은 dipole을 생성하고, 각 dipole을 원하는 위치에 배치하도롤 script를 만들어 주면됩니다.

만약, periodic boundary를 포함하고 있는 경우에는, 아래 그림과 같이 simulation 영역안에 하나의 dipole 이 있더라도, dipole이 무한한 array로 있는 것으로 간주하기에 따로 array를 만들어줄 필요는 없습니다.
(참고로, periodic boundary 를 사용하려면, structure가 주기성을 가져야 하고, 또한 source도 동일한 주기성을 가져야 합니다.)

이와는 달리, periodic boundary condition 을 이용해서 생성할 수 없는 dipole array 나 group 은 스크립트를 이용해서 원하는 위치에 여러 dipole을 배치하면 됩니다. 아래 그림과 같이 uniform circular distribution 을 가진 3가지형태의 dipole group을 구성하기 위한 예제를 첨부합니다. 예제 파일 [ dipole_group.fsp (334.5 KB) ] 을 열어보면 ‘dipole_group’ 이라는 analysis group 이 있는데, 마우스를 우측클릭한 후 ‘user properties’ 에서 ‘polarization type’ 에 ‘1’ 을 입력하면 아래 첫번째와 같은 polarization 이 ‘random’ 한 것을 만들어주고, ‘2’ 는 ‘centered’ polarization 을, '3’은 'tangential’한 것을 만들어줍니다.

좀 더 복잡한 형태의 group 이나 array 도 위 analysis group 의 스크립트를 참고하여 작업을 하면 구성할 수 있으리라 생각됩니다.

또한, object library 에 ‘dipole cloud’ 라는 analysis group 이 있는데, 이는 photonic crystal 에서 bandstructure 를 계산하기 위해 사용되는 것으로, PC 의 unit cell 에서 random 한 dipole 을 생성해줍니다.