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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
и отключать графические смайлики при размещении фортран-кода

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

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM
 
Сейчас как раз разбираюсь. Попробую и это. Спасибо!

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

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
 
о как!
 
эта библиотека -- _существенно_ под cygwin-порт
я её mingw взять не смогу -- всё, что под cygwin от bsd, в mingw давным давно деприкатед и не поддерживается...
 
так что увы, я тебе более не помощник...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 18:29 14-06-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 
оказывается я здесь сослепу что-то пропустил...
 

Цитата:
Кто нить видел нормальный аналог функции ltrim? обычный trim режет справа, а нужно и слева.

слева стандарт тебе никогда не отрежет... там всё под контрол-коды заточено...
 
а самому написать?
до первого непробела сам досчитай, а потом подстроку str(istart:len) используй...
 
да блин

Код:
 
      pos = 1
      do while (str(pos:pos) .eq. ' ')
c        pos = pos + 1
        if (pos > len(str)) exit
с        pos = pos + 1
      enddo
 

прям тут и написал... ещё себе не забыть копию оставить
только нужный коммент сними гы
 

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

на фиг?
 

Цитата:
как избавиться от фиксированной длины строки?

character str
allocatable str(:) ! грёбаные смайлы! здесь написано [:] только скобки круглые
 
намёк понятен?
хочешь, pointer используй...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 22:11 14-06-2007 | Исправлено: akaGM, 22:17 14-06-2007
mendriy

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

Цитата:
Кто нить видел нормальный аналог функции ltrim? обычный trim режет справа, а нужно и слева.  

 
Как вариант
 
    program delete
 
    character(64) str
    str = "    Hello World"
    write(6,*) str
    write(6,*) trim(adjustl(str))
 
    end program delete
 
 
Добавлено:
Вариант для вывода чисел

Код:
 
    program delete
 
    character(64) str
    Real :: f
 
    f = 3.1415926
    write(str,*) f
    write(6,*) str
    write(6,*) trim(adjustl(str))
 
    end program delete
 

Всего записей: 1 | Зарегистр. 03-05-2006 | Отправлено: 09:02 15-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день всем!
 
Результаты экспериментов по прикручиванию библиотеки gotoBLAS, сгенерированной в Gygwin, к CVF и Intel VF. Надеюсь, что кому-нибудь будет полезно.
 
 Выяснилось,  что мои предыдущие вопросы, как преобразовать dll в статическую библиотеку на самом деле не имеют отношения к тому, что мне было нужно, а именно, как подключить к проекту, создаваемому в CVF или Intel fortran, библиотеку из Cygwin?
 
1. Самое главное, оказалось, что библиотека в Cygwin с расширением .a, это обычная статическая библиотека, так что ее нужно просто переименовать .a -> .lib !
И ВСЕ !!!  
Это было для меня совершеннейшей новостью.
 
2. Есть, однако, небольшое осложнение, связанное с тем, что в CVF и IF имена подпрограмм в объектном файле образуются по другому закону, нежели в gcc и g77. И соглашения о вызове разные. Для решения этой проблемы можно использовать методы многоязыкового программирования, которые начиная с FPS 4.0, стали уже практически стандартом.  
 
В gcc и g77 соглашения о вызове соответствуют атрибуту C, а в CFV и IF - STDCALL.  
В g77  переменные передаются по ссылке, так же, как в CFV и IF
Имя модуля в gcc и g77 переводится в строчные буквы, после чего  спереди и сзади добавляется символ подчеркивания.  Все эти разночтения можно урегулировать, дописав интерфейс для каждой вызываемой функции из библиотеки.
 
Пример: для вызова функции saxpy из BLAS интерфейс должен быть такой:
 
 
   interface  
   subroutine saxpy( n, a, x, incx, y, incy )
   !DEC$ ATTRIBUTES C, REFERENCE, ALIAS:"_saxpy_" :: saxpy
   integer n, incx, incy
   real a, x(*), y(*)
   end subroutine saxpy
   end interface
 
Его нужно добавить в начало той подпрограммы, из которой будет вызываться saxpy
 
Главное здесь - это строка !DEC$, в которой все перечисленные выше правила вызова определяются: соглашения о вызове C, переменные передаются по значению, в объектном модуле подпрограмма будет записана под именем _saxpy_.
 
3. В этом механизме есть определенное неудобство, связанное с необходимость дописывать подобные интерфейсы во все подпрограммы, в которых вызывается функция.  
Выход состоит в том, чтобы на каждую функцию из библиотеки (в данном примере из BLAS) написать свою подпрограмму или функцию с именем,  точно совпадающим  с именем BLAS-овском функции. В ней уже будет вызываться функция для связи с Cygwin-библиотекой, снабженная соответствующим интерфейсом.  Примерный вид такого файла:
 
!!!!!!!!!!!!!!!!!!!!! file gotoblas.f !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
....  начало файла опущено
 
! подпрограмма - интерфейс для функции saxpy
subroutine saxpy( n, a, x, incx, y, incy )
integer n, incx, incy
real a, x(*), y(*)
 
   interface  
   subroutine saxpy_goto( n, a, x, incx, y, incy )
   !DEC$ ATTRIBUTES C, REFERENCE, ALIAS:"_saxpy_" :: saxpy_goto
   integer n, incx, incy
   real a, x(*), y(*)
   end subroutine saxpy_goto
   end interface
 
   call saxpy_goto( n, a, x, incx, y, incy )
   return
end subroutine saxpy
 ..... конец файла опущен
 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! end file !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
Преимущества:  
a) достаточно просто откомпилировать файл gotoblas.f и линковать его вместе со всем проектом.  
б) Не нужно вносить никаких изменений в основной код. Накладные расходы из-за повторного переприсваивания переменных и вызова программы мизерны.
в) при появлении новой версии библиотеки не нужно заново переделывать make файлы и т.д., достаточно просто подключить заново сгенерированную статическую библиотеку к своему проекту.
 
Проверено, работает на CVF 6.6 и Intel Fortran 9.1
 
Когда уже разобрался со всем этим, вспомнил, что аналогичный прием применяется в UMFPACK, написанной на C++, для вызова функций библиотеки из Фортрана.
 
 
Добавлено 15.06.07 в 15-40:
Рано радовался!
 
С модулями из BLAS1 все сработало, а с BLAS2 пошли аварийные завершения программы. Есть подозрение, что дело в передаче двумерных массивов. Так что приведенный выше рецепт не окончательный.

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 11:25 15-06-2007 | Исправлено: Andrew10, 15:41 15-06-2007
akaGM

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

Цитата:
 1. Самое главное, оказалось, что библиотека в Cygwin с расширением .a, это обычная статическая библиотека

 
как, собственно, по умолчанию под любыми портами под win
блин а как же ты библиотеку-то к проекту подключал?
 
gcc foo.c -lmylib.lib
 
совершенно эквивалентно
 
gcc foo.c -lmylib.a
 
что же ты ему подсовывал?
 

Цитата:
так что ее нужно просто переименовать .a -> .lib !
И ВСЕ !!!  

 
из файла makefile.rules
 
LIBWIN2KNAME = $(LIBNAME:.a=.lib)
и чей мейкер это не отработал?
твоей вины тут нет...
 

Цитата:
Это было для меня совершеннейшей новостью.  

бывает...
все мы когда-то что-то узнавали впервые...
 
mendriy
 

Цитата:
write(6,*) trim(adjustl(str))

неплохо, но ты мне дай эту строку статически подержать

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 15:51 15-06-2007 | Исправлено: akaGM, 16:03 15-06-2007
terminat0r



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

Цитата:
Самое главное, оказалось, что библиотека в Cygwin с расширением .a, это обычная статическая библиотека, так что ее нужно просто переименовать .a -> .lib !  
И ВСЕ !!!  
Это было для меня совершеннейшей новостью.

 в линуксе все статические библиотеки это стандартный ГНУсный архив обьектных файлов *.о
создается с помощью комманды ar , поэтому с библиотеки *.а даже можно очень просто вытащить обьектные файлы *.о  
 

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 19:15 15-06-2007
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Поясню природу своего удивления:
Я считал раньше, что в Unix(Linux) подобных системах, включая СYGWIN, формат исполняемого файла - ELF, а в Windows - PE (PortableExecutable). Видимо, это не так, и в CYGWIN формат тоже PE.
 
Может быть для людей, занимающихся системным программированием, это очевидные вещи, но для меня - приятная неожиданность.
 
akaGM

Цитата:
блин а как же ты библиотеку-то к проекту подключал?  

 
 Не очень понял вопрос, но на всякий случай еще раз поясню, что я делал:
 
1. В Cygwin сгенерировал библиотеку gotoblas.a. Здесь проблем нет никаких, настройки в дистрибутиве прекрасно работают.
2. переименовал ее в gotoblas.lib  
3. Пытаюсь прогнать тесты для BLAS c этой библиотекой в Windows, используя CVF или IF, и рецепт, описанный выше. Для BLAS1 это получилось, для BLAS2 пока нет.

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

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

Цитата:
Я считал раньше, что в Unix(Linux) подобных системах, включая СYGWIN, формат исполняемого файла - ELF, а в Windows - PE (PortableExecutable). Видимо, это не так, и в CYGWIN формат тоже PE.  

 
1. ключевое слово "исполняемого", конечного, другими словами...  
.exe для виндов, библиотека же -- это архив процедур, промежуточный продукт, о РЕ / ELF -форматах речи ещё не идёт...
 
2. СYGWIN
ты, видимо, плохо представляешь что это такое...
глянь на первые абзацы их главной страницы
http://www.cygwin.com/
 
короче, для тебя важно то что ты можешь (не всегда конечно) из Линь-сорсов собрать виндовское приложение с помощью gcc/g77
 

Цитата:

Цитата:
блин а как же ты библиотеку-то к проекту подключал?

Не очень понял вопрос, но на всякий случай еще раз поясню, что я делал:
 
1. В Cygwin сгенерировал библиотеку gotoblas.a. Здесь проблем нет никаких, настройки в дистрибутиве прекрасно работают.
2. переименовал ее в gotoblas.lib

 
и как её использовал в своих проектах?
 
вот твой исходник c1.c, вот библиотека gotoblas.lib,
тебе нужен с1.ехе
 
твои действия?
 
------------------------------------------------------------------------------
 
так...
по-моему, я допёр в чём у тебя проблема...
 
ты хочешь юзать библиотеку gotoblas.lib,  собранную при помощи gcc/g77 в своих
программах, используя IF или CVF? так?
а если так, то боюсь, что ничего у тебя не получится...
а получится только если ты и свои программы будешь компилировать g77
 
если я неправ, то пусть меня поправят более опытные товарищи...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 21:35 15-06-2007 | Исправлено: akaGM, 23:24 15-06-2007
Andrew10

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

Цитата:
ты хочешь юзать библиотеку gotoblas.lib,  собранную при помощи gcc/g77 в своих
программах, используя IF или CVF? так?
а если так, то боюсь, что ничего у тебя не получится...
а получится только если ты и свои программы будешь компилировать g77  

 
 
В результате некоторых усилий получилось связать библиотеки .a, скомпилированные в CYGWIN, c проектами Compaq Visual Fortran и Intel Visual Fortran. Рецепт в общем тот же, как и описанный  в моем посте выше на этой странице. Только для подпрограмм, у которых в качестве параметра передается строка нужно дополнительно указывать атрибут соответствующей переменной как REFERENCE (несмотря на то, что у всей подпрограммы уже указан атрибут REFERENCE. Для полноты рецепт с дополнением приведен здесь:
 
 
Подробнее...
 
 
Я подключил таким образом к своему проекту в IVF-9.1 библиотеки Gotoblas.a  и umfpack.a, а сейчас подключаю ARPACK.
 
Всего наилучшего всем!

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 14:51 29-06-2007 | Исправлено: Andrew10, 14:51 29-06-2007
akaGM

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

Цитата:
нужно дополнительно указывать атрибут соответствующей переменной как REFERENCE

странно, всегда считал такие calling conventions -- дефолтом для фортрана...
 
вот навскидку

Код:
 
blasint CNAME(long m, long  n, FLOAT *a, long lda, blasint *ipiv, long offset, FLOAT *buffer){
 

4 из 7 параметров передаются по значению...
и фор-прототип должен выглядеть как

Код:
 
interface
 integer*4 function CNAME(m, n, a, lda, ipiv, offset, buffer)
*DEC$ ATTRIBUTES VALUE :: m
 integer*4 m
*DEC$ ATTRIBUTES VALUE :: n
 integer*4 n
*DEC$ ATTRIBUTES VALUE :: lda
 integer*4 lda
*DEC$ ATTRIBUTES REFERENCE :: a
 real*8 a
*DEC$ ATTRIBUTES REFERENCE :: ipiv
 integer*4 ipiv
*DEC$ ATTRIBUTES VALUE :: offset
 integer*4 offset
*DEC$ ATTRIBUTES REFERENCE :: buffer
 real*8 buffer
  end function CNAME
 end interface
 


Цитата:
(несмотря на то, что у всей подпрограммы уже указан атрибут REFERENCE.  

а тут я не понял, что такое REFERENCE для подпрограммы вцелом?
 
и тем не менее, рад что у вас всё получилось...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 22:12 03-07-2007 | Исправлено: akaGM, 22:14 03-07-2007
Andrew10

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

Цитата:
странно, всегда считал такие calling conventions -- дефолтом для фортрана...  

 

Цитата:
а тут я не понял, что такое REFERENCE для подпрограммы вцелом?  

 
Здесь тонкость в том, что все переменные  должны передаваться по ссылке, а соглашения о вызове, что бы сопрягаться с gcc и g77, должны соответствовать языку С, поэтому имена имена программных модулей имеют оба атрибута: REFERENCE  и С. Что касается символьных строк,  то в Фортране 90 при передаче их в вызываемую подпрограмму в стек вставляется дополнительный "скрытый" параметр - длина строки. В g77 и gcc этого нет. Чтобы убрать этот параметр, для имени строки и нужно добавить еще раз атрибут REFERENCE.

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 11:03 05-07-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
всё равно ни фига не понял...
 

Цитата:
Здесь тонкость в том, что все переменные  должны передаваться по ссылке

почему?! если в С стоит func(int i) где тут ссылки?
если так сделано на С, то чтоб с ним "сопрячься" _все_ внешние вызовы должны быть "по значению"...
 

Цитата:
REFERENCE и С

совершенно два разных атрибута...
значение/ссылка для конкретного параметра и правило запихивания/чистки стека и "всё с маленькой и с подчёркиванием"...
 

Цитата:
то в Фортране 90 при передаче их в вызываемую подпрограмму в стек вставляется дополнительный "скрытый" параметр - длина строки

кстати, в старых Форах -- тоже самое...
и здесь, как правило, адаптируют со стороны С...
 
и вообще... на фига в счётный модуль слать строки?
за очень редким исключением...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 16:06 05-07-2007
Andrew10

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

Цитата:
Здесь тонкость в том, что все переменные  должны передаваться по ссылке
   
 

Цитата:
почему?! если в С стоит func(int i) где тут ссылки?
если так сделано на С, то чтоб с ним "сопрячься" _все_ внешние вызовы должны быть "по значению"...  

 
Здесь же речь идет не о произвольной С-функции, вызываемой из Фортрана, а о конкретных функциях библиотеки BLAS, для которой уже давно страндартизированы имена, списки переменных, а также то, что эти функции первоначально были фортрановскими.  
 
В этой конкретной реализации библиотеки практически все модули написаны на самом деле на С, а все "критические" с точки зрения быстродействия куски кода - на ассемблере, своем для каждого из большого числа возможных процессоров. Но "со стороны" Фортрана все выглядит так, будто библиотека состоит из откомпилированных Фортрановских исходников.
 

Цитата:
и вообще... на фига в счётный модуль слать строки?  

 
Часть функций BLAS2 и BLAS3 cодержат в качестве параметров строки.
 

Цитата:
кстати, в старых Форах -- тоже самое...  

 
Может быть, но, видимо, не в g77.

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 17:01 05-07-2007 | Исправлено: Andrew10, 17:03 05-07-2007
akaGM

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

Цитата:
Здесь же речь идет не о произвольной С-функции, вызываемой из Фортрана, а о конкретных функциях библиотеки BLAS...

 
blasint CNAME()
взята из GotoBLAS\lapack\getf2\getf2_k.h
 

Цитата:
...а о конкретных функциях библиотеки BLAS, для которой уже давно страндартизированы имена, списки переменных, а также то, что эти функции первоначально были фортрановскими.  

вот я и спрашиваю, откуда это следует в этом С-порте?
 
 
ладно, ни фига я не понимаю, работает -- и ладно...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 21:42 06-07-2007
aslav



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

 реально ли сейчас купить лицензионный cvf 6.6? или паровоз ушел - все дружно на интел ?

Всего записей: 279 | Зарегистр. 02-03-2006 | Отправлено: 17:06 10-08-2007
terminat0r



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
aslav
А зачем Вам cvf 6.6? Вы в курсе, что именно интел купил cvf и Intel Visual Fortran Compiler это дальнейшее развитие cvf но + лучший интеловский компилятор?

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 17:27 10-08-2007
aslav



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
что-то я сомневаюсь что интел фортран - дальнейшее развитие
 
они ведь шли параллельно путями

Всего записей: 279 | Зарегистр. 02-03-2006 | Отправлено: 15:54 13-08-2007
XPEHOMETP

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Похоже, ушел поезд. Вот отсюда сообщеньице:

Цитата:
We wish to announce that Hewlett-Packard no longer sells or supports Compaq Visual Fortran. However, A partnership has been established with Intel? to help you migrate to Intel Visual Fortran Compilers. Intel Visual Fortran Compilers were created by the same Fortran engineering team that created Digital/Compaq Visual Fortran (CVF), and we recommend that our CVF users take advantage of the migration path to Intel Visual Fortran Compilers.

Короче, Intel Visual Fortran - светлое будущее всего человечества!

Всего записей: 2485 | Зарегистр. 21-06-2005 | Отправлено: 00:09 14-08-2007
MikhalVasylevich

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Open codes for IMSL libraries
 
Такая трабла, вот несколько месяцев ваял код, наконец заработало (на ноуте).
Когда поше запускать на университеском кластере оказалось что у них фортран (там два есть интеловский и борланд) бюджетный варант, короче библиотек IMSL нет там, и в ближайшем будущем не ожидается.  Счас не знаю что делать, использую функцию  
IVPAG (from IMSL lib) для решения жестких. систем диф.ур.  
Прийдется наверное самому аналог этой IVPAG писать  
(есть похожая функция в numerical recepies).  
Никто не подскажет может где-то лежат открытые коды этих библитотек ?  
 
-----------------------------------------------
 
так исходников немерено в сети, буем разбирацца

Всего записей: 21 | Зарегистр. 06-09-2006 | Отправлено: 01:03 14-08-2007 | Исправлено: MikhalVasylevich, 01:47 14-08-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