160, 333/Inf} - 333 зображення можна побудувати.
б) Користуючись засобами h5utils, створимо зображення для створення GIF анімації.
$ h5topng-t 0:332-R-Zc dkbluered-a yarg-A first2-eps-000000.00.h5 first2-ez.h5
-t 0:332 Створює 333 PNG файлу, що зображують стан поля кожні 0,6 одиниць часу
Zc dkbluered - переводить стандартну чорно-білу схему в синьо (отріц.)-біло (нуль)-червону (полож.)
a yarg-A - обводить діелектрик сіруватим контуром
в) Для створення GIF анімації можна скористатися будь-яким доступним конвертором наприклад:
convert first2-ez.t *. png first2-ez.gif
4.3 Програма, що описує цикли і умовні оператори
Наступна програма більш функціональна і використовує більше можливостей мови Scheme. Ця програма створює кристал mat c діелектричної проникності ? = 12. Потім створює в ньому масив дірок з радіусом r = 0.25, заповнених повітрям. У кристал також внесений дефект у вигляді хреста.
В
Рис 4.3.1 Розрахункова область test4_42.ctl
; Лістинг test4_42
; 1
(define lx 20); Задаємо розмір розрахункової області по осі X і Y
(define ly 20)
(define r 0.25); радіус отворів
(define eps 12); матеріал
(define-param dmin -5); Задаємо параметри циклу
(define-param dmax 5)
(define-param ds 1); величина кроку
(define-param dpml 1); величина області PML;
(define-param l_place (+ (/ (+ dmin dmax) 2) 1)); задаємо координати ліній
; ----------------------------------------- ---
; 2
(define mat (make dielectric (epsilon eps))); створюємо діелектрик mat з e = 12
(set! geometry-lattice (make lattice (size lx ly no-size))); Задаємо розміри розрахункової області
; 3
(set! geometry (list (make block (center 0 0) (size infinity infinity infinity) (material mat))))
; Заповнюємо розрахункову область діелектриком mat
; 4
; Цикл по створенню отворів в діелектрику (матеріал - повітря)
(do ((x dmin (+ x ds))) ((> x dmax))
(do ((y dmin (+ y ds))) ((> y dmax))
; 5
(if (and (not (eqv? x l_place)) (not (eqv? y l_place)))
(set! geometry (append geometry (list
(make cylinder (center xy) (material air) (radius r) (height infinity...