Индекс и описание на примерни Fortran програми, използвани в курса

Oroginal article:http://www.personal.psu.edu/faculty/j/h/jhm/f90/progref.html

Име на програмата:

Какво прави:

add.f Добавя 2 числа
add2.f add.f с помощта на SUBROUTINEs програми и MODULE
aorder.f Демонстрира реда за съхранение на Многоизмерен масив, както и използването на израза EQUIVALENCE.
arith.f Демонстрира аритметичните задания като ред на операциите и операции в смесен режим. Също така използва изявлението DATA
arithp.f Демонстрира аритметичните задания с помощта на скоби и израза PARAMETER.
масив1.f Демонстрира използване на масиви за анализ на данни – max, min и средно и използване на форматиран изход.
array1s.f Същото като array1.f, освен че използва подпрограми за анализ на данни. Демонстрира как да се предават масиви между основната програма и подпрограмите.
array2.f Демонстрира използването на масиви със спецификации на Fortran 90.
array2s.f Същото като array2.f, освен че използва подпрограми за анализ на данни и декларации за размер на Fortran90.
array2se.f Същото като array2.f и array2s.f, освен че използва подпрограми и декларации за размера на масива Fortran 77.
array2sf.f Друго пренаписване на array2.f .
array3.f Демонстрира използването на израза ALLOCATE за деклариране на масиви с неизвестен размер.
array3a.f Програма, много подобна на array3.f, но изследва файла с входни данни, за да определи размера на входния масив. Проверява входния файл array3a.in .
array3as.f Същата програма като array3a.f, с изключение на това, че демонстрира използването на израза ALLOCATE с подпрограми.
array3b.f Друго използване на израза ALLOCATE, определящ размера от входния файл. Използва входния файл array3b.in .
array3c.f Друга програма за масиви за масиви с неизвестен размер, използвайки формула PARAMETER на Fortran 77, а не ALLOCATE.
array3e.f Програма за масив, която демонстрира MISUSE на оператора ALLOCATE.
associated.f Демонстрира използването на указатели и цели и тества тяхната асоциация.
clobber.f Илюстрира клопките на лошо индексиращите масиви.
debug.f Програма за пренос на топлина с грешки, които трябва да бъдат отстранени.
debug1.f Демонстрира процеса на отстраняване на грешки.
dimtest.f Тества опцията DIM за присъщите функции на Fortran 90 сума, minval и maxval за използване с масиви. Свързан с изходния изход dimtest.out .
dual-errors.f Пример за използването на структурата INTERFACE, създаваща общ интерфейс на функцията.
dual-interface.f Демонстрира използването на структурата INTERFACE, която създава обща функция, която може да се използва както с реални, така и с цели числа.
errors.f Програма с няколко грешки поради лошото местоположение на извлеченията.
format.f Демонстрира многото употреби на изявлението Format. Генерира примерен файлов format.f .
funspeed.f Програма, подобна на speed.f, която използва функции за извършване на всички изчисления.
gp-int1 Демонстрира използването на gnuplot за графика на данни от два входни файла. Примерен входен файл на gnuplot.
gp-int2 Друг примерен gnuplot входен файл.
gp-int3 “”
grades1.f Програма, която използва масиви и подпрограми за изчисляване и съхраняване на оценки. Свързан с оценки.in .
htcoef.f Програма, която изчислява приблизителни коефициенти на топлопреминаване за 1 инчова тръба за няколко числа на Рейнолдс.
htcoef1.f Същото като htcoef.f, освен че извиква функция за извършване на изчисленията.
htcoef2.f Същото като htcoef.f, освен че демонстрира факта, че променливите със същото име в основната програма и подпрограмите могат да имат различни стойности.
htcoef3.f Програма, много подобна на htcoef1.f и htcoef2.f, която използва трик за степенуване , за да увеличи скоростта.
iftests.f Показва многобройните употреби на изявлението IF.
inter1.f Демонстрира 2 прости метода на интерполация (линейна и кубична) за плавно свързване на резултати от 2 несъединени области.
inter2.f Същото като inter1.f, с изключение на интерполирането на различни данни.
inter3.f Подобно на inter1.f и inter2.f, но използва претеглен преход.
interface.f Демонстрира използването на структурата INTERFACE, която позволява използването на FUNCTIONS с масиви.
linint1.f Подпрограма, която интерполира y-стойности с дадена x-стойност и таблица с y-стойности.
linint2.f Подпрограма, подобна на linint1.f, но използва таблици със стойности x и y.
linint3.f Подпрограма, подобна на linint1.f и linint2.f, но по-ефективна.
linint4.f Подпрограма, подобна на linint1.f , linint2.f и linint3.f, но дори по-ефективна.
mathin Примерен файл на команди на Mathematica.
matprod.f Умножава две матрици заедно.
module.f Демонстрира използването на структурата MODULE в рамките на основната програма и нейните подпрограми.
newton1.f Примерна програма, използваща NEWTON ITERATION за решаване на уравнение.
newton2.f По-сложна версия на newton1.f, която използва операторски функции и цикли за изпълнение.
noadv.f Демонстрира използването на опцията NO ADVANCE при READ и WRITE.
pawsum.f Програма за масиви, която използва MAX, MIN, подразбиращи се DO контури, DATA изрази и други конструкции на Fortran 90.
plot1.f Начертава синусова функция.
plot2.f Програма, подобна на plot1.f, с изключение на подпрограмите. Илюстрира изявления EXTERNAL и INTRINSIC
pointers.f Демонстрира използването на указатели за манипулиране на секции от масиви. Генерира файла pointers.out
ranges.f Показва най-малките и най-големите абсолютни стойности, които могат да бъдат представени с всеки от няколко типа данни. Използва Fortran 90 изявления TINY и HGROM.
secant.f Използва секантна итерация за намиране на корените на уравнение. Сравнява решението с Newton Iteration от същото уравнение.
sifunc.f Въведение във функцията оператор.
speed.f Умножава три различни метода за изчисляване на точковото произведение на дълги вектори.
speedf.f Програма, подобна на speedf.f .
sums.f Демонстрира функцията Fortran 90 SUM с опцията MASK.
trig.f Изчислява SIN и COS на ъгъл, даден в градуси.
where.f Демонстрира използването на WHERE, ELSE WHERE и END WHERE.
Обикновени програми за диференциално уравнение
fall.f Изчислява динамиката на падащо тяло.
fall1.f Програма, подобна на fall.f, но въвежда MODULES.
fall2.f Изчислява динамиката на падащо тяло, прикрепено към пружина.
fall3.f Програма, подобна на fall2.f, но дайте отговор с точен втори ред (пропорционален на dt ** 2)
odeint.f Демонстрира използването на методите на Рунге-Кута, Адамс-Башфорд и Адамс-Моултън за решаване на ODE
Curvefit програми
quad.f Извършва квадратично сплайн приспособяване към определен файл с данни (с разширение .txt)
rholiq.f Подпрограма, която оценява плътността на фреона и неговите производни по отношение на други свойства.
satprs.f Функция, която оценява налягането на насищане на фреона като функция от температурата на насищане.
thcl.f Функция, която оценява топлопроводимостта на фреона в течност като функция на енталпията.
viscl.f Функция, която оценява динамичния вискозитет на течността като функция на енталпията на течността и налягането.
Програми за интеграция
trapezoid.f Програма, която демонстрира трапецовидното правило за интеграция.
trapz1.f Програма, подобна на trapezoid.f, която използва файла trapcom.h чрез оператор INCLUDE.
trapz2.f Програма, подобна на trapezoid.f, която използва MODULE.
Програми, използващи символни променливи
charvar.f Програма, която демонстрира използването на символни променливи във Fortran 77.
charvr90.f Програма, която демонстрира използването на символни променливи във Fortran 90.
Програми, свързани с Least Squares Fit
gendata.f Създава фалшиви експериментални данни със случайна грешка.
lin1.f Програма, която тества решения на линейни уравнения и създава 6×6 система от линейни уравнения. Генерира файла lin1.out
lsq.f Програма, която изпълнява най-малкото квадрати на квадратно уравнение към дадени данни. Тази конкретна програма дава местоположението на падащ обект по различно време. Свързан с файла fall.data
lsq2.f Програма, подобна на lsq.f, която се възползва от Fortran 90 инструкции.
lsq3.f Програма, подобна на lsq.f, която използва код, оптимизиран за паралелни или векторни процесори.
quadfit.f Програма, която взема данни от два масива и ги събира в квадратно уравнение.
Програми, свързани със сортиране на данни
drvsort.f Програма, която управлява подпрограмите за сортиране.
sort1.f Пример за SELECTION SORT с Fortran 90.
sort2.f Пример за BUBBLE SORT.
sort3.f Пример за INSERTION SORT.
sort3a.f Пример за INSERTION SORT с използване на функции Fortran 90.
sorthalf.f Сортира масив, който също прави същите връзки в спомагателен масив. Масивът може да бъде сортиран в нарастващ или намаляващ ред.
sortout Тест на всички подпрограми за сортиране.

Leave a Reply

Your email address will not be published. Required fields are marked *