льних обсягів XU (I) і YV (J). У загальному випадку сітка може бути нерівномірною і конкретний розподіл величин XU (I) і YV (J) залежить від особливостей задачі. Однак часто буває необхідно задати рівномірну сітку так, щоб всі контрольні обсяги мали однакові розміри як по осі х, так і по осі у.
Вхідні дані, необхідні для ZGRID, складаються з значень змінних XL і YL, що відповідають розмірам розрахункової області по осях х і у, і з бажаного числа контрольних об'ємів. При цьому за допомогою змінної NCVLX задається число контрольних обсягів у напрямку координати х, а за допомогою змінної NCVLY - відповідне їх число в напрямку координати у (для полярної системи координат змінна XL задає розмір області по куту, радий). На виході з процедури ZGRID визначені значення змінних Ll, Ml і координати граней контрольних обсягів, що зберігаються в масивах XU (I) і YV (J). Процедура ZGRID може бути використана і для введення деяких простих неравномерностей при побудові сітки. За допомогою формули
де п - позитивне число, можна отримати відповідну нерівномірну сітку при різних п.
При п gt; 1 сітка виявляється дрібніше близько лівої межі, а поблизу правої межі вона стає грубою і майже рівномірною. При n lt; 1 сітка груба біля лівого кордону і дрібна і майже рівномірна біля правої межі.
Таке розбиття у лівій і правій кордонів може бути змінено на протилежний, якщо використовувати формулу
У процедурі ZGRID координати граней XU (I) розраховуються за (4.1) і (4.2). При п=1, що задається за замовчуванням, розраховується рівномірна сітка. Інші значення п призводять до відповідних нерівномірно. Значення п для осі х міститься у змінній POWERX. Хоча значення п в (4.1) і (4.2) завжди повинні бути позитивними, ми використовуємо знак POWERX для вибору між формулами (4.1) і (4.2). Якщо POWERX gt; 0, EZGRID використовує формулу (4.1), якщо ж POWERX lt; 0, - (4.2) (де п=ABS (POWERX)). Нерівномірність розбиття по осі у створюється точно так само. Для завдання ступеня нерівномірності в цьому напрямку використовується змінна POWERY.
За замовчуванням POWERX і POWERY рівні одиниці. Якщо ви не зміните ці значення, то отримаєте рівномірну сітку. Зазвичай небажано використовувати значення POWERX і POWERY більше 2 і менше 0,5, так як це призводить до надмірної нерівномірності сітки.
Процедура PRINT
Коли знайдено рішення фізичної задачі, бажано вивести на друк інформацію про сітці і двовимірні поля залежних змінних. Такий висновок здійснюється при виклику процедури PRINT. Хоча зазвичай PRINT викликається тоді, коли вже досягнуто зійшовся рішення, в принципі цю утиліту можна викликати в будь-який час. Зручним місцем для виклику PRINT є процедура OUTPUT, де бажаний додатковий висновок результатів, що забезпечується PRINT.
Висновок результатів процедурою PRINT включає в себе роздруківку значень Х (1) і Y (J), що передує двовимірні поля тих F (I, J, NF), для яких значення KPRINT (NF) відмінно від нуля. Для кожного NF з метою ідентифікації поля F роздруковується заголовок TITLE (NF) довжиною до 18 символів, що задається користувачем.
Якщо ви викликаєте PRINT більше 1 разу (наприклад, для отримання полів температури в різні моменти часу в нестаціонарної задачі), то можна уникнути роздруківки щораз одних і тих же значень X (I) і Y (J). Для цієї мети служить змінна KPGR. Зазвичай KPGR=1, при цьому ви отримуєте роздруківку сіткових характеристик. При KPGR - 0 сітка не виводиться на друк. Якщо ви викликаєте PRINT кілька разів, то можете встановити KPGR=0 після першого виклику PRINT.
Процедура GRID
Функція процедури GRID - надання інформації про розрахункову сітці. Зокрема, необхідно задати значення MODE, LI, Ml, XU (I) для I=2, ..., L2 і YV (J) для J=2, ..., M2. При полярній системі координат додатково має бути задане значення радіуса R (l) для нижньої межі області. Грані контрольних обсягів не обов'язково повинні рівномірно відстояти одна від одної, але їх координати XU {I) і YV (J) зі збільшенням I і J відповідно мають зростати. Для полярної системи координат значення YV
(J) повинні збільшуватися в радіальному напрямку. Значення XU (2) або YV (2) не обов'язково повинні дорівнювати нулю. Значення R (l) може бути ненульовим, але ніколи не може бути негативним.
Якщо потрібно рівномірна сітка, то замість XU (I), YV (J), L1 і Ml слід задати довжини XL і YL, число контрольних обсягів у змінних NCVLX і NCVLY, а потім викликати ZGRID. Можна також задати деякі прості нерівномірності за допомогою значень POWERX або POWERY.
Використання нерівномірної сітки є потужним засобом ефективного розташування заданого числа розрахункових точок. Можна легко врахувати розриви в граничних умовах, властивостях матеріалу і розподілі джерел, поєднавши місця розривів з гранями контрольних об'ємів. Для створення прийнятної нерівномірної сітки часто буває корис...