field 데이터로 current plot 하는 방법?


#1

field 데이터를 받아 matlab으로 가져와서 current vector 플롯(2d 또는 3d)은 어떻게 하나요?


#2

Surface current density를 plotting하는 방법은 Charge and current density KB 웹페이지에 자세히 설명되어 있습니다. 2D current density에 대한 field profile과 vector plot은 Matlab의 도움 없이도 FDTD Solution의 자체 analysis group (divergence_current)을 이용하여 구현할 수 있습니다. Matlab 연동 기능을 사용하고 싶다면, 정식 Matlab 라이센스가 설치된 PC에서 Matlab integration status가 활성화(active) 되어야 합니다.
우선, Charge and current density 예제의 usr_current_charge_density_2D.fs 파일을 다운 받아서 프로젝트 파일을 실행시킵니다.

위 그림과 같이 object tree에서 "divergence_current"라는 analysis group을 선택하고 마우스 오른쪽 클릭 후 visualize -> J (current density)를 선택하면, 아래 그림처럼 특정 파장에서 current density profile을 얻을 수 있습니다. 만약 이 그래프를 곧바로 Matlab figure로 변환시키고 싶다면, 상단에 붉은 박스로 표시된 M 버튼을 클릭하여 Matlab 그래프를 확보할 수 있습니다.

그런 다음, vector type의 그래프를 그리기 위해서 Plot types에서 Vector 단추를 선택합니다. 아래 같은 vector 그래프를 구현하기 위해서는 Nx = 50, Ny = 50 (x, y축 샘플링의 개수)로 변경하고, enable scale factor for vector를 활성화시키고, scale factor를 5로 입력합니다. 마지막으로 Invert background color와 parallel projection도 활성화시키면, 다음과 같은 그래프를 확보할 수 있습니다.

Matlab에서 vector plot을 구현하려면, 먼저 FDTD Solutions에서 matlabsave라는 스립트 명령어를 이용하여 저장하기 원하는 변수나 파라미터를 Matlab 파일로 저장합니다. 그런 다음, 저장된 Matlab 파일(확장자: mat)을 Matlab에서 load 명령을 이용하여 불러들인 다음에, [quiver] (http://kr.mathworks.com/help/matlab/ref/quiver.html)와 [quiver3] (http://kr.mathworks.com/help/matlab/ref/quiver3.html) 명령어를 이용하여 2차원 및 3차원 vector 그래프를 획득할 수 있습니다.

Matlab 명령를 이용하여 field 데이타를 Matlab graph로 출력하는 방법은 아래 KX 페이지를 참고하세요.

혹시라도 추가 질문이 있으면, 질문을 남겨주세요.

감사합니다.