5E", M[i][j]); fputs(str,f); fprintf(f,”\n”); } fclose(f); } Здесь формируется массив M[20]][20] (необходимо помнить, что в C массивы начинаются с 0) и заполняется функцией M[i][j]=i+sin(j)


перейти к полному списку дипломных проектов

Ссылка на скачивания файла в формате .doc находится в конце странички

5E", M[i][j]); fputs(str,f); fprintf(f,”\n”); } fclose(f); } Здесь формируется массив M[20]][20] (необходимо помнить, что в C массивы начинаются с 0) и заполняется функцией M[i][j]=i+sin(j)

Объявим формат E12.5:

90 FORMAT (E12.5)

Сначала открываем файл:

open (3,FILE='out.txt', STATUS='UNKNOWN')

Далее на каждом шаге моделирования записываем в него информацию из массива следующим образом:

do i=lbi,ubi

do j=lbj,ubj

write(3,90) M(i, j)

end do

end do

После того как пройдены все шаги моделирования, файл необходимо закрыть:

close (3)

Таким образом мы можем записать все шаги моделирования в файл данных, чтобы впоследствии им воспользоваться для работы с программой console.

C/C++

Для С/С++ программ необходим формат “%12.5E”. Все числа необходимо приводить в строки. Напомним, что файл должен быть текстовым.

Пример кода с пояснениями.

Для начала объявим переменные массива, файла и вспомогательную строку:

float M[UBI][UBJ];

FILE* f;

char str[12];

Далее в программе необходимо открыть файл:

f=fopen(“out.txt”,”wt”);

Далее на каждом шаге моделирования записываем в него информацию из массива следующим образом:

for (i=0;i

for (j=0;j

sprintf(str, "%12.5E", M[i][j]);

fputs(str,f);

fprintf(f,”\n”);

}

После того как пройдены все шаги моделирования, файл необходимо закрыть:

fclose(f);

Обратите внимание на использование функции sprintf. Это наиболее простой способ привести float-числа к нужному виду, идентичному с форматом E12.5 используемому в программе console для считывания данных.

1.7 Тестирование программы и результаты тестовых расчетов

Проведем тестирование программы на файлах данных созданных Fortran и C++ программами.

Приведем листинг Fortran-программы:

program Sample

IMPLICIT NONE

real(4), allocatable :: M(:,:)

integer(1), parameter :: lbi=1, ubi=20, lbj=1, ubj=20

integer(1) :: i,j

allocate (M(lbi:ubi,lbj:ubj))

do i=lbi,ubi

do j=lbj,ubj

M(i,j)=sin(real(i))+sin(real(j))

end do

end do

90 FORMAT (E12.5)

open (3,FILE='out.txt',STATUS='UNKNOWN')

do i=lbi,ubi

do j=lbj,ubj

write(3,90) M(i,j)

end do

end do

close(3)

end program Sample

Как видим здесь формируется двумерный массив M(1:20,1:20) который заполняется значениями M(i,j)=sin(i)+sin(j). Составим pre-файл для него (out.pre):

1

20

20

1.00

1.00

X-scale

Y-scale

Function

Результаты вывода программы:

рис 5.

1. 3D-вид (visual) (рис 5

2. Контрастная заливка (рис 6):

рис 6.

3. Сечение по X (команда plainy с параметром 20) (рис7):

рис 7.

1-30.

Проверим теперь взаимодействие с C++ программой:

include

include

include

define UBI 20

define UBJ 20

FILE* f;

char str[12];

float M[UBI][UBJ];

int i,j;

void main()

{

for (i=0;i

for (j=0;j

if (i<19) M[i][j]=(float)i+sin((float)j)

else M[i][j]=0;

f=fopen("out.txt","w+t");

for (i=0;i

for (j=0;j

sprintf(str, "%12.5E", M[i][j]);

fputs(str,f);

fprintf(f,”\n”);

}

fclose(f);

}

Здесь формируется массив M[20]][20] (необходимо помнить, что в C массивы начинаются с 0) и заполняется функцией M[i][j]=i+sin(j). Pre-файл для него такой же как и в предыдущем примере.

скачать бесплатно Визуализация инженерных и научных расчетов

Содержание дипломной работы

pas (продовження) Государственный комитет РФ по высшему образованию
Рассмотрены вопросы освещения, защиты от излучений, электро- и пожаробезопасности, защиты от шума и вибрации, психофизические опасные и вредные факторы
1 Обзор средств визуализации инженерных и научных расчетов Использование вычислительной техники для визуализации и анализа научных данных стало уже традиционным
Визуально такую поверхность часто представляют либо в виде трехмерного изображения, либо в виде линий уровней
Для вращения изображения достаточно разместить мышь на поле графического вывода, нажать левую кнопку мыши и затем, оставаясь на поле вывода, перемещать мышь в произвольном направлении
Последнее выбрано исходя из соображений совместимости не только с Fortran-программами, но и с C/C++ и даже Pascal-программами
Графически структуру программы можно изобразить как это сделано на рис 4 (оговоримся сразу – это не блок-схема программы, это только схематичное изображение структуры)
Команды программы Скриптовый режим программы Запуска программы
Pre-файл (от preset – предварительные установки)– это файл с установками, необходимыми для работы программы, а также с оформлением шкал
будет отображаться массив с изменяющейся координатой X и постоянной координатой Y)
Кроме этого, первые две строки скрипта это имена pre-файла и файла данных соответственно
23456E+02 с пробелом в начале если число положительное и знаком ‘ - ‘ если отрицательное
5E", M[i][j]); fputs(str,f); fprintf(f,”\n”); } fclose(f); } Здесь формируется массив M[20]][20] (необходимо помнить, что в C массивы начинаются с 0) и заполняется функцией M[i][j]=i+sin(j)
Как и всякий процесс, написание программ обработки результатов для последующего графического вывода и вывод имеет свою технологию
Информация может передаваться через оперативную память (ОЗУ), через файловую систему в виде бинарных файлов или, более объемных, текстовых файлов
Негативная сторона заключается в затратах на обучение программистов, а так же в затратах на оболочки визуализации
Самым простым является тот, когда прямые перпендикулярны плоскости изображения, а сама эта плоскость является одной из координатных плоскостей или параллельна ей
Поскольку элементы сцены или картинки можно заносить в буфер кадра или в z-буфер в произвольном порядке, их не нужно предварительно сортировать по приоритету глубины
Создание интерфейса пользователя Этот этап выделен как заключающий, потому что от вида интерфейса зависит только удобство работы с программой
Оговоримся сразу, что использование созданного ПО предполагается в рамках университетской программы, к тому же работающей по расчетам программ инженеров
Таким образом, оценка конкурентоспособности товара подразумевает сопоставление значений показателей качества товара фирмы с показателем качества товара конкурента
Сравнение цен потребления производится по формуле (2): где Э – общий показатель по экономическим параметрам; Цпа – цена потребления анализируемого изделия; Цпк – цена потребления товара-конкурента
При рассмотрении вопросов охраны труда большое внимание уделяется производственному освещению, оздоровлению воздушной среды, защите от шума, электробезопасности, пожарной безопасности и др
Свечение со стороны экрана, а также частая смена заставок на экране при большой продолжительности трудовой деятельности может отрицательно воздействовать на зрение
Кроме того, любой монитор, работающий не на ЭЛТ, имеет то преимущество, что не излучает переменных компонент, связанных с наличием систем вертикального и горизонтального отклонения электронного луча
) прокладки; - применение на рабочих местах звукогасящих экранов; - отделение помещений с высоким уровнем шума от других помещений звукоизолирующими перегородками
м/час на одного работника, а в помещениях объемом 20 - 40 кубометров на одного работающего - не менее 20 куб
Программа согласуется с инженерными программами на языках C++ и Fortran и может быть использована как на этапе отладки, так и на этапе демонстрации
Москва

заработать

Закачай файл и получай деньги