[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 02/14 08:15 / Filesize : 180 KB / Number-of Response : 532
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

FORTRAN W



1 名前:デフォルトの名無しさん [2006/11/12(日) 17:13:35 ]
FORTRAN総合スレッドです。
FORTRAN77/90/95/2003, HPF等、FORTRAN全般に関する話題を書き込んで下さい。

・FORTRAN関連情報
お約束だが、まずは自分で調べよう
www.google.co.jp/

x86で動作するFortranコンパイラ
www.nminoru.jp/~nminoru/programming/x86-fortran.html

The Fortran Company
www.fortran.com/
Polyhedron Software
www.polyhedron.co.uk/
Google Directory - Fortran
directory.google.com/Top/Computers/Programming/Languages/Fortran/

・前スレ
FORTRAN III
pc8.2ch.net/test/read.cgi/tech/1104724162/
FORTRAN II
pc5.2ch.net/test/read.cgi/tech/1068351911/
Fortran
pc2.2ch.net/test/read.cgi/tech/1003214738/


175 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 20:26:22 ]
>>173
サイズに依存する。
小さいならいったん既存の計算式で求めたセルサイズをテーブルとして保存すればよい。

サイズが大きくてメモリーギリギリまで使っているなら、1回ごとに計算するほうがいい。


567
238  のちな形でサイトを指定してもいいなら、判別の計算式も簡単になるかもしれない。
149  計算機学科の人からはしかられるが、高速でやるにはデータ構造と処理が
     切り離せないので、まぁ問題を理解し整理して自分で良く考えろw

176 名前:172 mailto:sage [2007/01/05(金) 18:17:30 ]
>>175
遅レス申し訳ない。有難うございます。
やっぱりある程度地道にやるほか無さそうですね。
しこしこやってます。

177 名前:デフォルトの名無しさん mailto:sage [2007/01/08(月) 20:38:06 ]
若干Fortranから逸れますが、わかる方ご教授ください。
IntelのVisual Fortranで作成したコンソールアプリから
VCで作ったLibファイルを呼び出したいです。

簡単に書くと、VCは
BOOL PrintMessage()
{
中略
}
という関数になっています。

これをFortranから呼び出すために、
自分なりにマニュアルを読み、
以下のようにコーディングしてみました。

178 名前:デフォルトの名無しさん mailto:sage [2007/01/08(月) 20:39:25 ]
INTERFACE
LOGICAL FUNCTION PrintMessage()
!DEC$ ATTRIBUTES STDCALL :: PrintMessage
END FUNCTION
END INTERFACE

LOGICAL LX
LX = PrintMessage()

しかし、リンク時に_PrintMessageが見つかりません、と
リンクエラーが出ます。

解決方法はあるでしょうか?


なお、VCから上記VCを呼び出すケースもあるため、
両方Fortranで書けば?というのは無しでお願いしたいです。

一応環境としては、
Visual Studio .NET 2003 + Intel Visual Fortran v9.0
になります。

よろしくお願いします。

179 名前:デフォルトの名無しさん mailto:sage [2007/01/09(火) 00:52:12 ]
>>178
呼び出し規約がSTDCALLの場合、外部名はデフォルトですべて小文字と解釈されてしまうので
大文字・小文字が混在する場合は以下の様にする

!DEC$ ATTRIBUTES STDCALL, DECORATE, ALIAS: 'PrintMessage' :: PrintMessage

C側の PrintMessage() 関数も __stdcall でコンパイルされている必要がある。
C++の場合は extern "C" も必要。

また、IVFではLOGICALの内部表現(整数値)が奇数のとき真、偶数のとき偽となるので
他言語の関数とLOGICALを受け渡しする場合は注意すること。

180 名前:178 mailto:sage [2007/01/09(火) 21:34:40 ]
>>179
レスありがとうございます。

なるほど・・。
F側の大文字小文字対策はマニュアルに書いてありましたが、
いろいろ調整しても結果が同じだったので関係ないと思ってました。
C側の対策は全く見えてませんでした^^
正直Cはド素人なので上記のようにいわれてすぐに対応できませんが
参考にして調べてみます!
ありがとうございました。




181 名前:デフォルトの名無しさん mailto:sage [2007/01/09(火) 23:27:06 ]
>>180
IntelFortranのマニュアル見るとちまちまと書いてあるよ。

DECORATE修飾子が新設されたので、DEC時代に場合分けして書いていたのが
すっきりしてうれしい。



182 名前:デフォルトの名無しさん mailto:sage [2007/01/10(水) 19:42:57 ]
>>180
ATTRIBUTES STDCALL, ... ではなく ATTRIBUTES C, ... を使えばC言語の方はいじらなくてもおk。

183 名前:デフォルトの名無しさん [2007/01/12(金) 23:52:31 ]
三つの数値データを与えてその三つの数値の最大値、最小値、中央値、
平均値、標準偏差、不偏分散を求められるプログラムを作成せよ。
わからなくて大変です。
お願いします



184 名前:デフォルトの名無しさん [2007/01/16(火) 12:41:49 ]
Fortressどう思います?
数式をそのまま書けるとか、並列化にコンパイラレベルで対応とか・・・
なかなかよさそげですが。
ttp://japan.zdnet.com/news/devsys/story/0,2000056182,20340715,00.htm
ttp://slashdot.jp/developers/07/01/15/1521236.shtml

185 名前:デフォルトの名無しさん [2007/01/16(火) 12:45:26 ]
>>183
てっとりばやく答えが欲しいなら
pc10.2ch.net/test/read.cgi/tech/1164121236/
に行くといいのでは?

186 名前:デフォルトの名無しさん mailto:sage [2007/01/16(火) 20:18:01 ]
既に答えが出てる。 ていうかマルチ。

187 名前:デフォルトの名無しさん mailto:sage [2007/01/17(水) 03:15:36 ]
>>184
Fortranの資産使えないのにFortran風にする意味がいまいち良く分からん。

188 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 12:05:30 ]
>>184
pseudocode をそのままコンパイルしてくれるならうれしい。


189 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 12:55:53 ]
>>187
え、使えないの?

190 名前:デフォルトの名無しさん [2007/01/19(金) 23:38:03 ]
Salford ftn95でlapack95を使いたいねんけど、どーすればいいん??

191 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 00:43:01 ]
>>190
1.NetlibからLAPACKを拾ってくる。
2.どうにかしてblas.libとlapack.lib

192 名前:デフォルトの名無しさん [2007/01/20(土) 00:44:49 ]
>>190
1.NetlibからLAPACKを拾ってくる。
2.どうにかしてblas.libとlapack.libをつくる。
3.NetlibからLAPACK95を拾ってくる。
4.どうにかしてlapack95.libとモジュールファイルをつくる。
5. > ftn95 hoge.f90
6. > slink hoge.obj lapack95.lib lapack.lib blas.lib

193 名前:デフォルトの名無しさん [2007/01/20(土) 08:07:50 ]
>>192
どもども!
どうにかしてってところが問題だが、どうにかしてみます。
どうにかする方法がわかったら、またよろしゅ〜!



194 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 11:45:48 ]
77で動的配列ってできないの?
x(i,j)
ってしといて
ファイルからi,j読み込んでサイズ決めるみたいな感じにしたいんだけど・・

195 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 13:15:50 ]
>>194
言語規格としては出来ない。

ただ、コモンとか上のルーチンで大きなワーク配列を取っておいて、
いったん必要なサイズを知った上で下のサブルーチンで作業領域で整合配列を
切って使って似たようなことは出来る。

C言語もK&Rの付録を見るとmallocをそういう感じで実現する例を出している。


196 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 13:38:47 ]
90ならポインター使える。
PGIとか77でもポインター使える処理系もある。
ポインターの使えない77でもCとの合わせ技で可能。

197 名前:デフォルトの名無しさん [2007/01/20(土) 16:25:44 ]
>>193
LAPACK(BLAS):
・netlibから lapack-3.1.0.tgz を取ってくる。

blas.lib:
・lapack-3.1.0\BLAS\SRC の中のソース(*.f)を全部コンパイルする。
・出来たオブジェクトファイルを slim で blas.lib にまとめる。
 slim *.obj /file:blas

lapack.lib:
・lapack-3.1.0\INSTALL の中の dlamch.f, dsecnd.f, ilaver.f, lsame.f, second.f, slamch.f を
lapack-3.1.0\SRC にコピーする。
但し、FTN95には second.f, dsecnd.f で使われている ETIME関数が無いので
ETIMEを自作するか CPU_CLOCK, SYSTEM_CLOCK辺りを使って書き換える。
・lapack-3.1.0\SRC の中のソースを全部コンパイルする。
この際、slaruv.f, dlaruv.f をコンパイルするときは最適化オプションを外す。
・出来たオブジェクトファイルを slim で lapack.lib にまとめる。

tmglib.lib:
・lapack-3.1.0\TESTING\MATGEN の中のソースを全部コンパイルする。
この際、slaran.f, dlaran.f をコンパイルするときは最適化オプションを外す。
・出来たオブジェクトファイルを slim で tmglib.lib にまとめる。


198 名前:デフォルトの名無しさん [2007/01/20(土) 16:27:59 ]
>>197の続き)

LAPACK95:
・netlibから lapack95.tgz を取ってきて展開する。
・lapack95\SRCに移動。
・la_auxmod.f90 をコンパイルする。 → la_auxmod.mod, la_precision.mod が出来る。
・f77_lapack_single_double_complex_dcomplex.f をコンパイルする。 → f77_lapack.mod が出来る。
・f95_lapack_single_double_complex_dcomplex.f をコンパイルする。 → f95_lapack.mod が出来る。
・la_csygst.f90, la_csygv.f90, la_csygvd.f90, la_csytrd.f90, la_zsygst.f90, la_zsygv.f90, la_zsygvd.f90, la_zsytrd.f90
以外の la_*.f90 をコンパイルする。
・出来たオブジェクトファイルを slim で lapack95.lib にまとめる。


以上で出来たライブラリファイル(*.lib)を環境変数 LIB で指定したフォルダへ、
モジュールファイル(*.mod)を環境変数 MOD_PATH で指定したフォルダへそれぞれ移す。


199 名前:デフォルトの名無しさん [2007/01/20(土) 17:04:13 ]
関数名を引数に使いたいのですが、EXTERNAL文を呼び出し側で使っても
うまくいきません。
下のプログラムなのですが、何処が間違っているんでしょう?

External func
real func,SUM
write(*,*) SUM(func)
end

real Function SUM(f)
External func
real f
SUM = f(1.0)+f(2.0)
return
end

real Function func(x)
real x
func = x
return
end



200 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:15:37 ]
>>199
SUM() がF90の関数と混同されているんで内科医?
SUM0とかにすればおK

201 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:22:59 ]
>>199
External func → external func, SUM

202 名前:199 mailto:sage [2007/01/20(土) 22:07:45 ]
>>200>>201、ご指摘の方法で解決することが出来ました。
有難うございます。

203 名前:デフォルトの名無しさん [2007/01/20(土) 22:37:50 ]
>>197,198
ありがとう〜、格闘の末何とかなりました。
オレもあんたくらい、pcを自由にあやつりたいもんですわ!



204 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:37:48 ]
本来ならMakefileを書いて、テストプログラムも含めてmake(MK32)で処理させるべきなのだろうけど
FTN95の場合、他のコンパイラとオプションの指定方法が違ったりするから中々面倒くさい。

205 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 07:14:03 ]
質問です。
OPEN (4,FILE=RESULT.OUT,FORM='FORMATTED')
このRESULT.OUTを、あるIと言う数値を読み込んで
例えばI=5000ならRESULT5000.OUTのようにしたいんですが、
出来るでしょうか?要するに計算のステップ数に応じて
自動的にファイル名をつけて出力してやりたいんですが、
OPENの中身をいじるだけじゃダメですかね?

206 名前:デフォルトの名無しさん [2007/01/26(金) 10:04:30 ]
>>205
その質問は千回くらい出ている。
過去ログ見れ



207 名前:デフォルトの名無しさん [2007/01/28(日) 18:26:34 ]
自分のマシンのフォートランコンパイラコマンドを汁にはどうしたら良いですか?

VINELINUX使ってます。

208 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 20:37:47 ]
>>207
shell に g77 とか gfortran とか g95 とか ifort とか入れてみる。
使えるようなら no input files などと返ってくる。
なけりゃ自分でインストロールする。

209 名前:デフォルトの名無しさん [2007/01/28(日) 21:47:58 ]
全部使えませんでした。
ifortいれたいのですが、どこでダウンロードできますか?

210 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 21:54:39 ]
>>209
つ google

211 名前:209 [2007/01/28(日) 22:35:38 ]
何度もすみません。
インテルのコンパイラ入れようとしたら下記のメッセージで止まってしまいます。
解決方法を御存じのかたは教えてください。

./.././data/install_fc.sh: line 1459: ERROR: unable to find command "ls" !: command not found
./.././data/install_fc.sh: line 1463: Please add the location to the above commands to your PATH and re-run the script.: command not found
./.././data/install_fc.sh: line 1464: Please press Enter to continue...: command not found


212 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 22:39:51 ]
>>211
> 解決方法を御存じのかたは教えてください。
夜間中学で英語を学びなおす。

213 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 22:48:29 ]
つーか lsが見つからんて、どんな環境やねん



214 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 00:02:48 ]
>>211
ttp://www.google.co.jp/search?hl=ja&q=%22unable+to+find+command%22&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja


215 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 01:02:12 ]
EclispのPhortranってどうよ?

とくにLinux上のIntelコンパイラとの組み合わせの使い心地 知りたい

216 名前:デフォルトの名無しさん [2007/02/03(土) 07:25:11 ]
Mac OS X 上のgfortran 4.0でコンパイルした時に
gfortran: spec failure: unrecognized spec option 'M'
というエラーがでるのですが何がまずのでしょう? ちなみに他のマシン(LINUX)のgfortranでは
エラーはでません。一応、走るのですが、writeでposition='append'を指定しても既存ファイルに
データを付け加えず、完全に上書きしてしまうので困っています。ちなみにLINUX上では
うまく行きます。

217 名前:209 [2007/02/04(日) 11:51:06 ]
>>214
ありがとうございます。
感謝します。

218 名前:デフォルトの名無しさん [2007/02/15(木) 00:11:54 ]
NAGのFortranBuilderのNAGFortran95コンパイラのVersionって5.0?それとも5.1?

5.1なら買いたいんだけど、誰か知ってる人いる?


219 名前:デフォルトの名無しさん mailto:sage [2007/02/16(金) 15:57:03 ]
全角英数は気持ち悪いというセンスを身に着けてから出直してくれ。

220 名前:デフォルトの名無しさん mailto:sage [2007/02/16(金) 19:36:46 ]
>>219
おい、おまえ





同感

221 名前:デフォルトの名無しさん [2007/02/17(土) 00:00:33 ]
>>219
ごめん 訂正させてもらう

NAGのFortranBuilderのNAGFortran九五コンパイラのVersionってX.0?それともX.T?

X.Tなら買いたいんだけど、誰か知ってる人いる?

全角漢数字かローマ数字をつかえばいいわけだろ?

222 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 00:07:15 ]
つまらん

223 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 00:22:25 ]
フォートランって今でもリアルに使ってるとこあるのか?w
本物のプログラマは〜、の時代でもすでに時代遅れのダメ言語だったのに



224 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 01:16:58 ]
>>223
おまえ、ちょっとそこに正座しろ。
この世間知らずがw


いいか、電子計算機の本流はFortranだぞ!
スパコン・ランキングの機械で動いているプログラムは基本的にFortranだ。

大体マルチコアで並列化といっているが、MPIもOpenMPも対応コンパイラはFortranか
Cしかなくて、Cはあくまでおまけだ。大多数の人間はFortranでプログラム書いてる。

これから並列化が主流になるにつれ、Fortranの天下が再びやってくるのは間違いない!
悔い改めよ!さもなくば地獄の業火に焼かれるべし!
詳しくはマタヨシイエスのサイトを熟知すべし。


225 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 01:22:52 ]
唯一神Fortran

226 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 01:36:08 ]
>>221
「全角英数」の意味がわかるようになってから出直してくれ。

227 名前:デフォルトの名無しさん [2007/02/17(土) 01:43:01 ]
>>216
gfortran どやっていれたんですか?
俺のmacにははいってないんだてど

228 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 01:53:16 ]
>>227
君のMacはハズレだったんだよ。

229 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 01:54:03 ]
>>226
おまいら,うぜーから他所でやれ.

230 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 10:54:58 ]
>>229
うるせー、>>218>>221のようなグロは見たくねーんだよ。

231 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 23:09:57 ]
最近くだスレのほうがレベルが高いなw


232 名前:デフォルトの名無しさん [2007/02/21(水) 15:40:26 ]
>>218 5.1を搭載

233 名前:デフォルトの名無しさん [2007/02/21(水) 22:54:23 ]
>>232
dクス!


nagのサイトに調べにいったんだが、Windows用はまだ5.0だったので、だめかと思ったが。

安いやつ買って見っかー でもライセンスがウゼーんだよな。



234 名前:デフォルトの名無しさん [2007/02/25(日) 00:31:39 ]
Intel Visual Fortran 9.1に付属してくるデバッガ(idb)の詳しい日本語の資料や書籍ってないんでしょうか?

235 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 17:39:49 ]
エクセルソフトがコンパイラマニュアルの日本語訳を出していたが、デバッガもあったかな?

236 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 23:30:36 ]
>>235
XLsoftから日本語マニュアルを落としてみましたが、
詳しく載っているのはVisual StudioでのデバッグだけでIDBについては主要なコマンドの説明のみでした。
>IDB に関する詳細は、[スタート] メニューから利用可能なインテル・デバッガーのオンラインマニュアル (英語) を参照してください。
とのことで・・・このマニュアル、完全に日本語訳されてる訳じゃないんですね。
Language Referenceとか英文のままだし。

237 名前:デフォルトの名無しさん [2007/03/11(日) 12:16:05 ]
>>236
ttp://www.xlsoft.com/jp/products/intel/compilers/compiler_j.html
日本語版スペシャルエディションでもなんか中途半端だし、しょうがないんじゃない?

コンパイルする時のオプションてなに使ってる?/O3とか普通に使って大丈夫なのかな・・・


238 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 12:20:26 ]
Interl Visual Fortranのデバッガは糞だと思う。HPやCompaqの頃までのが一番良かった。

239 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 15:45:54 ]
Compaq Visual Fortranの頃はVisual Studioのデバッガだけじゃなかったっけ

240 名前:デフォルトの名無しさん [2007/03/11(日) 17:16:03 ]
idbは概ねUNIX/Linuxのdbx/gdb互換(のコマンド体系)なので
これらについて書かれた資料を探せば参考になるかも知れん。

>>237
>/O3とか普通に使って大丈夫なのかな・・・
同時にデバッグ・オプションも付けとけばとりあえずおk、だが
最適化による命令の並べ替えやループのアンロールなどの影響で
ソースファイル通りにトレースできなくなる所が出てくる。

241 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 19:28:32 ]
>>240
インテル・コンパイラはデバッグオプションつけても自動的に最適化は抑止されないのか?


242 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 20:07:27 ]
>>241
ifort /debug:full hoge.f90
のようにデバッグ・オプション(/debug:full)だけ付けて最適化の指示を省略すると
すべての最適化が無効になる。

ifort /debug:full /O3 hoge.f90
のように最適化を明示(/On)すると、最適化した状態でデバッグ情報の生成を行う。

243 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 22:03:02 ]
>>242
そういった資料はどこかにあるものだろうか?
必死こいてググって見たがイマイチよく理解できなくて・・・
何かよいものがあれば教えてください



244 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 22:43:38 ]
>>243
XLsoftからDL出来る日本語マニュアルから。
>>242の内容なら、「アプリケーションのビルド」−「Debugging」−「デバッグと最適化」の所に載っています。

245 名前:デフォルトの名無しさん mailto:sage [2007/03/11(日) 23:44:47 ]
>>244
まさかそんなところに!!
ありがとうございます、熟読してきます。

246 名前:デフォルトの名無しさん [2007/03/20(火) 19:03:09 ]
ジョン・バッカス追悼age

John W. Backus, 82, Fortran Developer, Dies

John W. Backus, who assembled and led the I.B.M. team that created Fortran,
the first widely used programming language, which helped open the door to
modern computing, died on Saturday at his home in Ashland, Ore. He was 82.

ttp://www.nytimes.com/2007/03/20/business/20backus.html?_r=2&hp=&adxnnl=1&oref=slogin&adxnnlx=1174384848-yna0f27jrkZeyETCJGvVNQ

247 名前:デフォルトの名無しさん [2007/03/21(水) 11:13:38 ]
【訃報】コンピュータ言語「FORTRAN」開発者、ジョン・バッカスさん死去…米・オレゴン州
news22.2ch.net/test/read.cgi/newsplus/1174440079/

248 名前:デフォルトの名無しさん [2007/03/21(水) 13:16:33 ]
ジョンさん、懐かしい

249 名前:デフォルトの名無しさん [2007/03/21(水) 14:02:59 ]
【訃報】ジョン・バッカスさん死去 コンピューター言語「FORTRAN」開発
news23.2ch.net/test/read.cgi/news/1174434397/

250 名前:デフォルトの名無しさん [2007/03/21(水) 14:50:05 ]
バッカスって酒飲みの

251 名前:デフォルトの名無しさん [2007/03/23(金) 19:54:29 ]
すいません、初心者です。
↓のようなデータを画面に出したいのですが
参考プログラムを教えていただけませんか?
1964/1/1 115 89 80 81 104 154 209 256 287 298 285 260 229 199 176 170 189
1964/1/2 155 111 89 81 91 124 171 227 266 293 292 274 252 221 190 174 181
1964/1/3 191 147 112 92 94 113 151 194 241 271 290 283 267 241 214 189 176
1964/1/4 222 185 147 117 101 107 134 168 208 248 274 284 274 256 233 208 185
1964/1/5 238 213 184 156 134 127 139 164 193 227 259 276 274 267 249 226 204
1964/1/6 248 234 214 190 165 151 149 161 181 206 234 257 267 266 257 243 222
1964/1/7 234 236 229 215 199 184 175 175 184 203 224 241 256 264 259 248 233
1964/1/8 216 228 234 229 221 213 203 192 190 197 210 225 239 252 258 254 243
1964/1/9 193 212 227 237 238 231 220 209 199 194 195 205 217 232 243 250 246
1964/1/10 163 181 203 226 238 243 240 229 217 205 195 196 202 215 232 245 251


252 名前:デフォルトの名無しさん [2007/03/24(土) 07:34:06 ]
開発者死んだのにお前ら流石にスルーし過ぎw

253 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 10:32:06 ]
>252
手は合わせたが、2chで語る話題でもなかろう。



254 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 22:54:12 ]
>>252
バッカスのヤオイ同人でも作ればいいのか?


255 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 23:23:03 ]
まあ、バッカスさん自身はあまりFORTRANを好きじゃなかったみたいだしな。

256 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 08:28:32 ]
writeをつかってバイナリデータを書き出しているのですが、
マシンによって出力されるバイナリが微妙に違い、
互換性のないバイナリファイルができてしまいます。
どのマシンでも共通のバイナリファイルを読み書きできるようにするには
どのようにしたらよいのでしょうか?


257 名前:デフォルトの名無しさん [2007/04/10(火) 10:59:24 ]
>>256
無理言うなw
どうしてもやりたければ、自分でビット列を生成して、それを1文字にして書け。
それでもあわせるのは不可能。

テキスト文字で出してIBM単密度形式の磁気テープでやり取りするのが一番確実だ。

大体、マシン毎にワード数(バイト数)が異なる場合がある。
昔のACOSは9ビット、CDCも妙なワード長だった。

文字コードにしても、IBM互換のEBCDIC系と(ただしメーカー毎に微妙に違う)、
DECやACOSのASCII系などが入り乱れている。

数値のフォーマットは会社毎にマシン毎にコンパイラ毎に異なるのが普通だ。

さらにはIBM、モトローラ系列BigEndianビット列LittleEndian、DEC、Intel系のLittleEndian系に
分かれている。これらもビット並びでさらに分裂するらしい。


とはいえ、明るい話もある。数値計算の世界では、もはやACOSもCDCもほとんど使われていない。
EBCDICもめったに見なくなった。ワード長は32ビットが普通だし、1バイトは8ビットに統一された。
数値のフォーマットもIEEE754にほぼ統一された。

残る問題はエンディアンだけだ。そのエンディアンすらコンパイラのオプションで大抵は、マシンの
自然体に関わらず、Big/Littleのどちらでも読み書きできるのが普通だ。

ゆえに、『エンディアン』をマニュアルで調べれば、チミの問題は解決する。

258 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 19:09:47 ]
インテルのフォートランコンパイラifortを使ってコンパイルしています。
CPUはOpteronなのですが、-xWオプションをつけないとSSEやSSE2は全く使用されないのでしょうか?

259 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 00:11:39 ]
>>258
デフォでは使用されなかったと思う。詳しくはHelpで確かめよ。

SSEは厳格にはIEEE754の規約を満たしていないせいか、
あるいは全バイナリー対応のためか?w


260 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 00:22:30 ]
Mac用は-xPがデフォルトの様だから互換性のためなんでしょうね。

261 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 13:06:13 ]
FORTRANで書き出したバイナリファイルの読み出し方は分かるのですが、
実験機器がはき出したバイナリファイルを読み込むにはどうしたらよいのでしょうか?
なお、FORTRANで書き出すと、今使っているマシンでは先頭に4バイトほどの識別データが付加されますが、
実験機器がはき出したバイナリファイルにはこれがついていません。


262 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 17:43:14 ]
>>261
ファイルをOPENするときに form="binary" としたり (処理系依存)
access="stream" としたり (Fortran 2003)

263 名前:デフォルトの名無しさん mailto:sage [2007/04/13(金) 02:58:02 ]
>>261
DIRECT形式を使って書くという裏技がある。昔のコンパイラでやるにはこれか。

ただ今は>>262の書くように、F2003拡張の先取りでSTREAMモードが大抵あるのでそれを使うがよろしい。




264 名前:デフォルトの名無しさん mailto:sage [2007/04/13(金) 21:39:29 ]
面倒なのでCで読み込む。

265 名前:デフォルトの名無しさん [2007/04/25(水) 16:57:37 ]
STDCALL の関数を g95 から呼びたいのですが、どうするのがよいでしょうか。

266 名前:デフォルトの名無しさん [2007/04/25(水) 21:35:56 ]
>>257
>1バイトは8ビットに統一された。

以前は統一されてなかったの?

267 名前:デフォルトの名無しさん mailto:sage [2007/04/26(木) 22:37:47 ]
>>266
あらゆるものが統一されていなかった。


268 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 14:36:07 ]
今は統一されているといっていいのか?

269 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 16:02:16 ]
まあ昔に比べれば

270 名前:デフォルトの名無しさん [2007/05/07(月) 06:10:19 ]
fortranで
webの結果を得ることできる?

get www.hoge.com
を行い
結果をファイルに残す

あるいは、戻り値 403 not found
かどうかの判定とか。
Linux *g77
です

271 名前:デフォルトの名無しさん mailto:sage [2007/05/07(月) 06:15:37 ]
できなくはないだろうけど、
別の言語を使った方がいいと思う。

272 名前:デフォルトの名無しさん [2007/05/07(月) 08:01:53 ]
うわ、返事はや!
ありがとう。

自由自在に書ける言語がFortranとVB系以外のbasicなんです。
検討してみます

273 名前:デフォルトの名無しさん mailto:sage [2007/05/07(月) 10:14:30 ]
>>270
表示するだけならこんなので動くと思うけど

web2console.py
----------------------------
#!/usr/bin/env python
import urllib

conn = urllib.urlopen("www.yahoo.co.jp/")
data = conn.read()
print data
----------------------------

F2PY - Numerical Analysis with Python
scipy.dip.jp/index.php?F2PY
nihongo.homeip.net/word/scipy/

じぶんは fortran は使ったことないからよくわからないけど
fortran ともそれなりに相性も良いみたいだね…(正直よくわからん)



274 名前:デフォルトの名無しさん [2007/05/07(月) 11:18:23 ]
>>270
外人がg77でのやり方を解説しているページがある。
環境変数を使って変数のやり取りをしていた。

LINKがみつかんねーw

fortran cgi でググルと色々引っかかる。


275 名前:274 mailto:sage [2007/05/07(月) 11:24:19 ]
>>270
ああごめん。
FORTRANでサーバー側のCGIを書くのかと思ったが逆か。
クライアントを書きたいのか。

Windows なら WinInet.Lib+Intel Visual Fortranでなら出来る。
Linuxでもその類のDLLをFortranから呼び出せば何とかなるのではないか?








[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<180KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef