계산시간

Circuit tool의 계산시간

일반적으로 Circuit tool의 계산시간은 매우 짧다. 특히 linear simulation의 계산시간은 왠만해서 1초를 넘지 않는다. 물론 linear simulation으로 최적화를 하게 되면 그 step의 수에 따라 수십분이상 걸리기도 하지만, 어쨌든 굉장히 빠른 속도임에는 틀림없다.

nonlinear simulation의 하게 되면 대체로 linear simulation에 비해 몇 배 이상의 시간이 소요되지만, 사용하는 device parameter나 능동소자의 특성에 의존한다. 이 경우 최적화를 돌리면 그 복잡성으로 인해 수시간 이상 걸리기도 한다. 이러한 것들은 사용자가 최적화의 tolerance를 적당히 조절하면 시간조절이 충분히 가능하다.

어쨌든 Circuit tool에서의 계산시간은 2D나 3D에 비하면 새발의 피라고 볼 수 있다.

 

2.5D tool의 계산시간

일단 2D/3D가 되면 기본적으로 수치해석적으로 maxwell 방정식을 풀 게 되고, 이것은 곧 미적분 방정식과 matrix 계산을 해야한 다는 의미가 되기 때문에 많은 시간이 소요된다. 간단한 구조라면 수초만에 계산하는 것도 가능하겠지만, 넓은 주파수 범위에서 복잡한 구조를 계산할 때는 하루 온종일 돌려도 안 끝날 수도 있다.

많은 사람들이 2.5D simulator가 3D simulator보다 빠를 것이라고 생각하는데, 꼭 그렇지만은 않다. 대부분은 속도에서 큰 차이가 나지 않으며, 대체로는 3D 보다 빠르지만 오히려 더 느린 경우도 있다. 2.5D simulator의 장점은 속도면보다는 평면구조의 보다 쉬운 해석 및 약간의 정확도 향상에 있다고 보는 것이 옳다. 만약 평면적층 구조만 주로 설계하는 사람에게는 비싼 3D tool보다는 상대적으로 저렴한 2.5D tool을 이용해 보다 쉽게 설계하는 것이 이로울 것은 분명하다. 특히 패치안테나의 경우 2.5D tool쪽이 더 쉽고 빠르고 정확하기 때문에 패치 안테나 개발자들이 2.5D tool을 더 선호하게 된다.

2.5D 역시 구조의 복잡성에 따라 계산시간은 크게 늘어나며, 기타 재질과 관련된 계산시간 지연은 3D tool과 동일하다. mesh를 조절하여 계산시간을 조절할 수 있고, 필요이상의 라운드 처리를 제거함으로써 역시 계산시간의 향상을 가져 올 수 있다. 하지만 32 array patch 라던지 하는 복잡한 구조는 어차피 어떤 방법을 사용하더라도 오래걸리긴 매일반이다.

 

3D tool의 계산시간

3D tool은 그 계산공간의 임의성 문제로 인해 모든 simulator를 통털어 가장 계산이 오래걸린다. 물론 수초만에 계산이 가능한 구조도 있지만, 대체로 분단위에서 시간단위 이상의 계산을 기본적으로 수행하게 된다. 3D tool에서 계산 시간을 증가시키는 요소는 mesh의 수에 가장 크게 의존하는데 이와 관련된 요소들을 정리하면 아래와 같다.

1. 파장에 대한 구조물의 크기

당연한 문제로서 파장길이의 1/4, 1/10 같은 단위로 mesh가 분할되므로, 구조물이 주파수에 비해 크냐 작으냐에 따라 그 계산시간의 차이는 지대하다. 이 문제는 당연히 설계자가 조절하기는 어려운 부분이므로 그냥 넘어가는 수밖에..

2. 구조의 복잡성

구조가 복잡하면 더욱 많은 재질 경계면에 대해 mesh 분할을 해야하고, 전자파가 특정 부위에 집중될 가능성이 크기 때문에 mesh density의 증가 등으로 인해 계산시간이 크게 늘어나게 된다. 그래서 3D 해석을 할 때의 가장 명심해야 할 것 중 하나가 바로 "SImple is Best"이다. 그래서 구조물의 특성이 중요한 영향을 미치는 부위를 제외하고는 가능한한 생략하거나 단순화시키는 것이 유리하다.

3. 굴곡

복잡성 문제의 연장선적인 문제인데, 어떤 알고리즘을 막론하고 직선이 아닌 곡선에 대한 해석에는 많은 mesh와 함께 계산의 복잡성을 증가시키기 때문에 골치아픈 문제가 된다. 그래서 코너부위의 라운드 처리 같은 경우는 대체로 생략하는 경우가 많고, 원의 경우라면 segment 분할을 너무 많이 하지 않는 것이 유리하다. 굴곡과 관련된 mesh 분할은 FEM 계열과 FDTD 계열이 많은 차이를 보이는데, FEM의 경우 nonlinear mesh를 사용하기 때문에 코너의 라운드처리나 segment가 많을 경우 아주 쥐약이다. 반면에 conformal mapping 이 가능한 FDTD 계열의 알고리즘에서는 한 mesh 안에서 두 개의 재질로 분리가 가능하기 때문에 원의 segment나 코너의 라운드 처리가 계산시간에 큰 영향을 주진 않는다. 하지만 어떤 식으로든 계산 시간이 늘어나는 것은 막을 수 없기 때문에 굴곡처리에 많은 신경을 쓸 필요가 있다.

4. 손실 재질

도체의 도전율이나 유전체의 tangent delta 같은 것은 손실성 재질값이기 때문에, matrix의 element를 많이 증가시킨다. 그래서 도체의 경우에는 PEC(Perfect electric conductor;완전도체)를 사용하고, 유전체의 경우 dielectric constant(실수부)만 입력하는 경우가 많다. 손실을 고려하지 않은 경우와 손실을 전부 고려한 경우는 대부분 2배 이상의 계산시간 차이가 있으므로, 손실이 중요한 factor가 아닌 경우라면 가능하면 사용하지 않는 편이 유리하다는 점을 명심해야 한다. 특히 ferrite나 anisotropic 재질을 적용하는 경우에는 아예 fast sweep등의 알고리즘이 먹히지 않으므로 계산시간이 상당히 늘어나지만, 꼭 필요한 재질값이라면 어쩔 수 없이 감수해야 한다.

5. 복잡한 수치입력

상대적으로 영향이 적은 편이긴 하지만, 입력되는 수치값들이 복잡하냐 단순하냐에도 계산시간이 영향을 받는다. 예를 들어 특정 길이가 5인 경우와 5.0123451 과 같이 입력된 경우 아마도 결과의 차이는 극히 미미할 테지만, 계산시간은 수십 %이상 늘어날 수도 있다. 아무래도 컴퓨터가 계산해야 되는 실수 필드가 늘어나기 때문에 floting point 계산이 복잡해지기 때문이다. 이례적으로 FEM계산에서 center freq.를 1.9875 로 설정하는 것과 2로 설정하는 데 계산시간 차이가 수십배가 나는 경우도 발견되었다. 어쨌든 필요이상의 복잡한 수치는 피하고 볼 일이다.

  << Back

Copyright by RF designhouse. All rights reserved.