Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.05.08;
Скачать: [xml.tar.bz2];

Вниз

Написание расчетных программ на Delphi   Найти похожие ветки 

 
Saietor   (2003-04-19 21:04) [0]

Проблема: я - физхимик. Но волею судеб занимаюсь написанием моделирующей программы. Пишу на Паскале, так как кроме него ничего пока не разумею.
Программа чисто вычислительная, и используется по сути только мной. Минимальные требования к интерфейсу, способам ввода данных и т.д.
Требуется: графический вывод (не шибко лохматый, кружочки одни :), возможность сохранения данных в файл и, главное, БЫСТРОДЕЙСТВИЕ. Паскалевский 16-битный компилятор не может, не умеет, а масштабирование модели очень-очень нужно.
Предположим, оптимизировать математически ее я смогу, но ее надо написать на современном языке программирования, вот хотя бы на Дельфи.

Проблема 2: Все пособия что я видел начинают с интерфейса, с Win API и прочей бредятины, которая меня совершенно не колышет. Может быть вы посоветуете мне, с чего начать? Какие-нибудь FAQ и книжки, которые мое химическое сознание способно постичь?
А то я в интерфейсных и API-шных классах тону на ровном киле, а как расчеты во все это впихнуть никак не понимаю :(


 
Юрий Зотов   (2003-04-19 22:47) [1]

Вам нужен, прежде всего, сам язык Паскаль (или Турбо Паскаль). Компилятор Delphi поддерживает его в полном объеме, плюс предоставляет еще и расширения. По этому поводу советую книги В.В. Фаронова (причем даже не по Delhi, а именно по Турбо Паскалю). Потому что любой чисто расчетный код на Паскале компилятор Delphi съест совершенно спокойно, и так же спокойно съест Паскалевскую работу с файлами.

Что же касается интерфейса в виде "кружочков", то просто рисуете эти кружочки на любой канве (TCanvas) ее же методами. Например, можно использовать компонент TPaintBox и его метод Paint.


 
Lancelot   (2003-04-20 00:41) [2]

Смею вставить свои пять центов: мне кажется, что для чисто расчетных задач больше подошел бы старый добрый Фортран:
1) его для этого специально и придумали
2) соответственно, высокое быстродействие в расчетах
3) масса библиотек для расчета чего угодно
4) достаточно прост для изучения не-программистами

Может, конечно, я и ошибаюсь...


 
GEN   (2003-04-20 01:44) [3]

>Saietor
"Проблема 2: Все пособия что я видел начинают с интерфейса, с Win API и прочей бредятины, которая меня совершенно не колышет."
Это проблема 0 !!!
Вот когда Вас это начнет "колыхать", тогда спокойно можнте пере-
ходить к проблеме 1. Я сам, как и многогие, через это прошел.
И поверьте на слово - иного не дано.


 
Хороший человек   (2003-04-20 01:45) [4]

>Lancelot © (20.04.03 00:41)

Может, конечно, я и ошибаюсь...


Ты, может и не ошибаешся (даже очень может), но врятли Saietor станет изучать Фортран ради нескольких расчётов.

По-моему, если с умом подойти, то и Паскаля хватит (и кружочки он рисует, и даже квадратики). Что касается быстродействия, то тут опять же: если с умом подойти...


 
Угу   (2003-04-20 03:18) [5]

Хороший человек (20.04.03 01:45)
> но врятли Saietor станет изучать Фортран ради нескольких расчётов.

Кстати "врядли" - пишется именно так. Кроме того человек знающий Паскаль, имхо знает и Фортран (кроме, может быть, нескольких мелочей синтаксиса). Это я о самом языке, а не о библиотеках функций.
А в остальном, действительно "и Паскаля хватит".
Я только в очень большом сомнении после слов автора "Паскалевский 16-битный компилятор не может, не умеет"?
Непонятно "кто, чего и сколько"?


 
Lancelot   (2003-04-20 04:08) [6]

Ну, раз он забрел сюда -- писать ему на Паскале :)


 
Хороший человек   (2003-04-20 10:51) [7]

>Кстати "врядли" - пишется именно так.

А .. ну .. это.. это я для смягчения )))


 
p77   (2003-04-20 15:48) [8]

По сабжу: я вот тоже физик, но т.к. мне самому пришлось ваять программу для моделирования и расчетов решения физ. задачи (более конкретно - это решения дифуров матфизики), то пришел к необходимости хоть минимально разбираться в интерфейсе программы, в ВинАПИ и т.д. Хоть раньше я и работал на ТурбоПаскале7, но проблем с переносом программ на Дельфи в общем-то не возникло. Так что ничего страшного здесь нет. А писать программы можно на чем угодно, просто так получилось, что Дельфи для этого, имхо, лучше всего подходит. Так и получилось, что Дельфи мне нравится больше всего (это вовсе не камень в огород Бейсика, С++ или Фортрана).
С уважением,


 
KaPaT   (2003-04-20 17:44) [9]

Могу посоветовать насчет проблемы 2.
Объем большой (~5Mb, 828 стр., pdf), но книга по-настащему замечательна.
http://www.coolx.mydream.ru/page.php?id=21


 
Jeer   (2003-04-21 13:10) [10]

Может стоит обратить внимание на MatLab, MatCad и т.п. ?


 
Mystic   (2003-04-21 14:03) [11]

MATLAB + Simulink
Язык программирования, специально заточеный под выполнение расчетных задач. Большое количество библиотек.

БЫСТРОДЕЙСТВИЕ - это случайно не реал-тайм процесс? Иначе не вижу смысла сильно оптимизировать (какая по большому счету разница, час или пять часов?)

Только я не понял, что не может 16-битный компилятор Паскаля?


 
Axis_of_Evil   (2003-04-21 14:11) [12]

>Lancelot © (20.04.03 00:41)
>Смею вставить свои пять центов: мне кажется, что для чисто >расчетных задач больше подошел бы старый добрый Фортран

Согласен, учитывая, что на нем до черта математических библиотек готово ...



 
Axis_of_Evil   (2003-04-21 14:13) [13]

>Lancelot © (20.04.03 00:41)
>Смею вставить свои пять центов: мне кажется, что для чисто >расчетных задач больше подошел бы старый добрый Фортран

Согласен, учитывая, что на нем до черта математических библиотек готово ...


2Mystic
>какая по большому счету разница, час или пять часов?

Никакой, а вот 2 или 5 недель - большая



 
Mystic   (2003-04-21 14:36) [14]

Для начала пара ссылок:

Уроки программирования в MATLAB
http://www.phys.nsu.ru/cherk/matlab6/Index.html
(в частности урок 23 http://www.phys.nsu.ru/cherk/matlab6/Chapter%2023/1.htm в котором содержится описание многих возможностей MATLAB)

Форум по MATLAB --- http://www.matlab.ru/forum/default.asp

1. Большой разницы не вижу... Задача решается покупкой чуть более производительной техники. Во многих ситуациях это дешевле, нежели оптимизация. Да, еще... Если в MATLAB я накидаю сложную модель за пару часов, и ее расчет будет производится 5 недель, или я буду проводить оптимизацию месяц, а потом программа будет считать еще две недели?

2. MATLAB позволяет генерировать C-текст.

Имхо, Fortran --- вчерашний день. И современных математических методов, реализованых под Fortran, найти трудно (Fuzzy logic, Newral Network, System Identification, и т. д.)


 
Хороший человек   (2003-04-21 18:17) [15]

2 Saietor: может скажите, что за расчёты - поможем чем можем.


 
Lancelot   (2003-04-21 22:20) [16]


> Mystic © (21.04.03 14:36)
> Имхо, Fortran --- вчерашний день.

Ну... Фортран тоже на месте не стоит... Просто им сейчас меньше, чем раньше, людей занимается..
Вообще-то я его вспомнил, потому что он чуть сложней бейсика в изучении. А автору ветки, кажется, нужно, чтобы все было просто.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.05.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.009 c
3-23032
girl
2003-04-18 16:00
2003.05.08
DBASE-IV и MSSQL7


14-23375
Scorpx
2003-04-20 18:37
2003.05.08
Программирование и геометрия!


14-23287
DimaK
2002-11-11 22:34
2003.05.08
Библиотека MMTools 2.0


1-23169
IronHawk
2003-04-24 15:28
2003.05.08
Приветствую Мастеров! Как получит Handle кнопки в ToolBar-e...


14-23347
race1
2003-04-13 09:40
2003.05.08
Как мне повезло с Учителем, я так рад!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский