Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330

Открыть новую тему     Написать ответ в эту тему

akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаются все вопросы, связанные с программированием на ФОРТРАН, как общего так и конкретного характера.
Постарайтесь дать как можно больше информации о возникшей проблеме -- это в конце концов в ваших же интересах чтобы вам помогли...

прежде чем просить помощи в задании
платное решение задач

ресурсы этого топика
ссылка на подборку ресурсов, собранных посетителями этого форума
 
то, чем мы решили поделиться
ссылка на страничку программ etc собственного изготовления, которыми любезно делятся наши форумчане


если вам вдруг не отвечают или ответ вас не устраивает
и вообще полезно прочитать всем спрашивающим
 
просьба к пишущим и отвечающим все большие листинги оформлять тегом more
и отключать графические смайлики при размещении фортран-кода

Всего записей: 24104 | Зарегистр. 06-12-2002 | Отправлено: 18:11 14-01-2007 | Исправлено: akaGM, 09:47 01-03-2020
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто нить видел нормальный аналог функции ltrim? обычный trim режет справа, а нужно и слева.
Меня фортран всегда убивал своей системой вывода данных, особенно когда преобразуешь число в строку.. как избавиться от фиксированной длины строки?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:41 05-06-2007
autumn_orion



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ikka
Я ставил под федору интеловский фортран. Проблем не было.. Ставил ту версию, которая  unsupported

Всего записей: 157 | Зарегистр. 09-08-2002 | Отправлено: 15:07 06-06-2007
KChernov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery

Цитата:
особенно когда преобразуешь число в строку.. как избавиться от фиксированной длины строки?

А Format или явное задание формата при выводе не помогает?
У целых вроде вообще есть I0...

Всего записей: 2471 | Зарегистр. 20-04-2004 | Отправлено: 15:45 08-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день всем.
Помогите пожалуйста, решить проблему.  
 
Вопрос в коротком формате: можно ли, и если можно, то как, преобразовать динамическую библиотеку в статическую?
 
Тот же вопрос в длинном формате:  
есть библиотека gotoblas, которая, как пишут разработчики, создает оптимизированную версию BLAS + некоторые наиболее важные программы из LAPACK. Работает якобы быстрее, чем соответствующие пакеты, включенные в  IMSL и MKL. Для компиляции под Windows используется gcc и g77  из cygwin и создается библиотка с расширением  *.a, затем из нее делается dll-библиотека (использование gcc существенно, так как критичные куски кода написаны на ассемблере).
 
На последнем этапе создаются также файлы с именем библиотеки и расширениями *.lib и *.exp. Но попытка простого подключения к компилятору файла *.lib приводит к сообщению о неразрешенных ссылках вызываемых функций.  
 
Я всегда работал со статическими библиотеками, и, как мне кажется, удобно иметь в данном случае *.lib, а не *.dll. Например, чтобы подключать ее к другим доступным пакетам, вроде ARPACK  и т.д без изменений в последнем.  
 
Итак вопрос еще раз: можно ли из dll сделать lib?

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 17:04 09-06-2007
karakurt2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
насколько я знаю, имея динамическую библиотеку невозможно встроить её код в образ исполнимого файла вашей программы. динамическая библиотека используется из программы с помощью либо раннего либо позднего связывания. раннее связывание подразумивает наличие библиотеки импорта на этапе сборки программы, а позднее связывание означает динамическую загрузку библиотеки в память на этапе выполнения программы и получение адреса нужной процедуры с помощью системного вызова. получение библиотеки импорта из имеющейся dll описано в статье Q131313 из MSDN или в файле /usr/share/doc/cygwin-doc-1.4/html/cygwin-ug-net/dll.html

Всего записей: 733 | Зарегистр. 06-12-2003 | Отправлено: 14:55 11-06-2007
FuzzyLogic



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
Можно, тулы и методы можно погуглить, всё зависит от конкретного языка/компилятора который ты используешь. Раньше MS поставляла implib, у Borland тоже было что-то своё.
А так, вот пара ссылок ну и ессно + гугл
 
http://www.geocities.com/SiliconValley/5806/implib32.htm
http://www.binary-soft.com/dll2lib/

Всего записей: 1920 | Зарегистр. 27-07-2002 | Отправлено: 21:31 11-06-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
что-то мне сдаётся, что нет там особой проблемы...
можно глянуть на это чудо? в смысле на саму библиотеку?
какая-то она слишком проприетарная, неохота регистрироваться...
 
и вообще... берётся открытая библиотека, что-то там мутное к ней прикручивается с целью
получить какой-то профит...  да ещё челом с такой фамилией... гы
не верится мне в это...
хотя если для тебя шибко важно получение прироста производительности даже на 0.001%...

Всего записей: 24104 | Зарегистр. 06-12-2002 | Отправлено: 18:36 12-06-2007 | Исправлено: akaGM, 19:21 12-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
karakurt2
FuzzyLogic
 
Спасибо за полезные ссылки, начал их изучать. Если что-то получится, сообщу здесь
 
akaGM

Цитата:
можно глянуть на это чудо? в смысле на саму библиотеку?  

 
1. Могу выслать мылом или положить на какой-нибудь ftp-сайт. Доступ к файлообменникам типа рапиды на работе закрыли
 
2. Повышение производительности обещают на 10-15%  по сравнению с MKL, а это уже имеет смысл для задач, считающихся часами.
 
3. Есть, на самом деле, общая проблема, для решения которой полезно иметь надежный рецепт. Многие мощные библиотеки, типа ARPACK, UMFPACK и т.д.,  по умолчанию настроены на компиляцию с использованием g77  и gcc либо в Unix (Linux), либо в Cygwin. Если я использую другие компиляторы, то возникает проблема настройки под  них, на решение  которой тратится довольно много времени и, главное, не всегда этот процесс гладко проходит. У меня, например, есть лицензионный Compaq Visual Fortran, а в этом году собираемся покупать Intel-овские компиляторы.  
 
Поэтому хотелось бы иметь рецепт, как можно использовать библиотеку, скомпилированную в Cygwin, вместе со своим кодом, скомпилированным, например, в CVF. При этом очень желательно эту совместимость обеспечить только средствами компиляторов, без внесения изменений в исходный код, не добавляя в него директив для компилятора, атрибутов для вызываемых функций и т.д.  Я не знаю, можно ли этого добиться.

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 09:35 13-06-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
 

Цитата:
10-15%

согласен...
 

Цитата:
Многие мощные библиотеки, ...,  по умолчанию настроены на компиляцию с использованием g77 и gcc  

неверно...
они пИсаны на стандарте Ф4 (Ф77), вылизаны и отлажены до блеска и идут на всех компиляторах без малейшей адаптации, всё исключения из этого правила -- подозрительны и  как правило содержат кучу ошибок...
 

Цитата:
Могу выслать мылом

если одним куском получится меньше 5М, то давай на
мойНик@yandex.ру
если нет, тогда дам другой адрес в ПМ...
обещаю _обязательно_ посмотреть...
кажется мне, что всё-таки ты там что-то не дочитал и создать рабочую статическую библиотеку можно простой перекомпиляцией без бубна и напильника...
 

Цитата:
Спасибо за полезные ссылки, начал их изучать

имхо, пустая трата времени... бинарники корректно тебе конвертнёт только автор этого тулза...
 

Цитата:
 Поэтому хотелось бы иметь рецепт, как можно использовать библиотеку, скомпилированную в Cygwin

дался он тебе...
используй mingw
из собственного опыта: спарка mingw&msys позволяет вполне корректно собирать довольно большие линакс-проекты вообще не заботясь ни о чём...
configure
make
install

Всего записей: 24104 | Зарегистр. 06-12-2002 | Отправлено: 13:33 13-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM
 
Объем библиотеки не очень большой, меньше 2 Мгб, закачал из дома на slil.ru:
 
_hxxp://slil.ru/24508955
 
 
Остальное постараюсь прокомментировать завтра.

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 21:17 13-06-2007
danunah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ребята, оч нужен ваш help
кто-нить сталкивался с проблемой, что прога ваще не компилится и
выдает при первом же обращении к массиву ошибку и не говорит какая
это просто пипец
пробовал в таких компиляторах как absoft и Microsoft Fortran POWERSTATION V4.0
я сам не рублю в фортране, но и задача у меня минимум
откампилить прогу
программа из учебника
в ней не должно быть ошибок
правда учебник оч старый
объясните, плиз, поподробнее так как я не программист )

Всего записей: 5 | Зарегистр. 13-06-2007 | Отправлено: 21:29 13-06-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
а это ты откомментировал?
 
# Using static allocation instead of dynamic allocation
# Default is dynamic allocation
# STATIC_ALLOCATION = 1
 
+
 
надо фигачить
make libs
а для dll вообще писать
make dll
 
хотя может я и не прав... и это не о той аллокации идёт речь...
у меня вообще ничего не получается, уж очень громоздкий конфиг...
 
 
 
danunah

Цитата:
 кто-нить сталкивался с проблемой, что прога ваще не компилится и
выдает при первом же обращении к массиву ошибку и не говорит какая  

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

Всего записей: 24104 | Зарегистр. 06-12-2002 | Отправлено: 21:40 13-06-2007 | Исправлено: akaGM, 22:01 13-06-2007
danunah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а тут можно текст проги кидать?
она не большая
млин просто очень нужно, а для того кто разбирается, уверен, это на раз получиться

Всего записей: 5 | Зарегистр. 13-06-2007 | Отправлено: 23:30 13-06-2007
XPEHOMETP

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
danunah
В учебниках ошибок вроде не должно быть, но встречаются опечатки. Кроме того, в компиляторе какие-то вещи могут идти по умолчанию (например, то, что integer занимает 4 байта), а автор учебника мог иметь в виду что-то совсем другое. Так что действительно, текст проги приведите!
 
ЗЫ: Текст прги кидать можно, но желательно заключать его в теги [mоrе] ... [/mоrе], тогда этот текст  выводится в отделном окне и не будет загромождать сообщение. Только не надо копировать эти теги из моего поста, они с русскими буквами, чтобы реально не работали, а служили как руководство к действию.

Всего записей: 2485 | Зарегистр. 21-06-2005 | Отправлено: 23:33 13-06-2007 | Исправлено: XPEHOMETP, 23:39 13-06-2007
danunah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот собственно и текст программы.
 
Подробнее...

Всего записей: 5 | Зарегистр. 13-06-2007 | Отправлено: 23:51 13-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
danunah
 
Вот текст с исправленными опечатками и ошибками в синтаксисе Фортрана:
Подробнее...
 
Осталась единственная ошибка: в основной программе у вызываемой подпрограммы accel 11 аргументов, а в ее определении - 9. Судя по всему, в вызове accel аргументы dt и dt2 не нужны, так как в теле подпрограммы они не используются. Но это ты уж сам...

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 10:45 14-06-2007
danunah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо тебе огоромное, Andrew10. Тока вот что он выдает при компиляции:
This demonstration copy of Absoft Fortran 95 time breakdown problem. unknown expiration.

Всего записей: 5 | Зарегистр. 13-06-2007 | Отправлено: 12:16 14-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
danunah

Цитата:
Тока вот что он выдает при компиляции:
This demonstration copy of Absoft Fortran 95 time breakdown problem. unknown expiration.

 
 
Вероятно закончился срок действия демонстрационной версии компилятора.
 
Нужно установить free-компилятор, например, Salford Fortran,  Open Watcom Fortran, или g77. Последний вариант входит в состав Cygwin или Mingw. Ссылки можно найти здесь:
 
_http://www.thefreecountry.com/compilers/fortran.shtml
 
Или искать кряк к Absoft, но эти вещи обсуждаются в варезнике.

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 12:36 14-06-2007
danunah

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот это понимаю форум! Супер! Спасибо большое всем, кто помогал и особенно Andrew10. Я доволен

Всего записей: 5 | Зарегистр. 13-06-2007 | Отправлено: 14:10 14-06-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
если ты ещё не разобрался, то если хочешь проверь такую вот идею:
 
всё у тебя в порядке и ты всё правильно делаешь, за одним исключением:
надо к твоему фортрановскому проекту для линка добавить ещё дефолтные с-библиотеки...
на чём там цыгвин базируется на libc или libgcc я не знаю...
 
может я прописные истины говорю, и всё там само прекрасно с дефолтными либами автоматически разрешается, но я просто не пользовался mix-lang'ом на gcc

Всего записей: 24104 | Зарегистр. 06-12-2002 | Отправлено: 15:18 14-06-2007 | Исправлено: akaGM, 15:26 14-06-2007
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru