ショボ短歌会

fortranに関する質問です.
あるプログラム例(おそらくfortran77で記述されている)
で理解できないところがあり質問しました.

BFUNC(S) = S

とあるのですが,これはどういう意味なのでしょうか.
BFUNCについて調べてもわからず,行き詰っています.
プログラム中の後に

S = FLOAT(J) / FLOAT(JMAX)
E = BFUNC(S)

という記述があります.
ファンクション関数のようなものかとも
思いましたが,そのような設定に関する記述も特に見当たらず・・・
何か77特有の組み込み関数とかでしょうか.

情報が少なくて意味不明かもしれませんが,
本当にここ以外では出てきません.
また,S,Eともに型宣言等もありません.
もしわかる方,おられましたらお教えください.
よろしくお願いいたします.

A 回答 (5件)

配列の宣言がないのなら、文関数の可能性が高いです。

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!
文関数というものがあるのですね!最初の記述も型宣言の次に書いてあるため,これのような気がします!
どうもありがとうございます!
しかし,やはり気になるのは,
BFUNC(S) = S
では,そのままS使えばいいのにという疑問が残ります・・・.

お礼日時:2008/11/26 10:56

あ~, 文関数を完全に失念してました>#4. そうですね, ここより前に BFUNC がなければそれが最もありそうですね.

    • good
    • 0
この回答へのお礼

再度ご回答いただきありがとうございます.
はじめのBFUNCは型宣言のすぐ次にきておりましたので,
おそらく文関数なのだろうと判断しました.
どうもありがとうございました!

お礼日時:2008/11/26 10:59

もはや FORTRAN77 は記憶の彼方ですが, 左辺に関数呼出がくることはないはずです. なので,


BFUNC(S) = S
の左辺の BFUNC(S) は配列としか解釈されないと思います. ただ, 宣言がないとちょっとなんとも.
完全なプログラム全体があればいいんだけど.... もちろんここで全体を挙げるのは著作権的にアウトなんですが, その「参考書」が一般に入手できるものであれば, その書名でも挙げてみれば (きっと私でない) 誰かが答えられるかもしれません.
    • good
    • 0
この回答へのお礼

的確なご指導ありがとうございます!
荒川忠一著『数値流体工学』という参考書です.
問題のプログラム文はpp.151に記載されています.

お礼日時:2008/11/26 10:49

専門家を名乗って(リタイヤした研究者です)いる我にたいしたアドバイスできませんが



名称から推測すると、ベータ関数かベッセル関数かな

処理系と関数ライブラリやパッケージによると思うけど、標準組み込みには無いと思います
通常は、AFUNC、BFUNCって、関数の説明するときに使う仮の名が多いですね
    • good
    • 0
この回答へのお礼

お礼が遅くなってしまいまして申し訳ありません.
通常は関数の説明に使われるものなんですね.
ありがとうございます!

お礼日時:2008/11/26 10:46

BFUNC は配列ではないでしょうか?

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます.
配列宣言がないのですが,そういう使い方もできるのでしょうか?
また,
BFUNC(S) = S
だと,そのままSを使用する方が早く,
もはやこの配列を使用する意味がないように思われるのですが.

プログラム例が不完全なのでしょうか・・・
参考書の付録なので,ある程度は大丈夫だと思ったのですが...

お礼日時:2008/11/25 02:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!