• 検索結果がありません。

TT

ドキュメント内 広 報 (ページ 30-36)

SNIXSY

IIIII1 NNNNNN SSSSSS 6689︐︐

一一一一一一一一一一一一

しCC EE

拙恥晒叩岬恥祁

例 I S N ;

6 3 R E A D ( 5 , 1 0 1 ) N 7101FORMAT(I4) 8 D O 1 0 1 = 1 , N 9 R E A D ( 5 , 1 0 2 ) X 10102FORMAT(F20.0) 1 1 2 0 Y = 1 . 0 / X

12.DEBUG(文法書P.166,P.177,P.119〜123参照)

11.で述べた4種類のデバ.ソグ機能のうちの,どれか1つだけを用いたとき,/PARA文を /PARAbLIST,MAP,DEBUGと書き,さらに主プログラムに図のようにDEBUGのための ステートメントを挿入する。文法書P、123のCHECKON,CHECKOFFは間違いでINITON,

INITOFFが正しい。

BOSIIのDEBUG機能は不完全であI), 文法書P.119〜123の記述も不明確であ

っ て , こ れ ら は 近 い 将 来 改 善 さ れ る と 思 わ れ る 、 蚤 で , 詳 細 は 省 き , 実 用 に 便 利 な 使 用 法 の み を 記 す 。

図 ①

S T O P

DEBUGIMg星ノ→(INIT,sUBCHKまたは

SUBTRACE)

AT4r諺プログラム中にある実行文の番号

① プ ロ グ ラ ム 全 部 を デ バ ッ グ す る と き は , 上 図 の よ う に す れ ば よ い 。 こ の と き A T n で 指 定 した文番号nのステートメントは,プログラム中どの位詮にあっても同じ結果が得られる。

②あるステートメントより前の部分をデパ、ソグしたいとき,図②のようにする。

るる

なす

るグるグ しもも

るグ

諦駒①すッすヅ

行︵行パ

実デ極実デ実デ

︑ILjlノT︑1J︑jlγ1J

慕い等価

一一一FC

llIl1l

T R A C E す る 実 行 す る

3

T R A C E し な い 実 行 も し な い

D E B U G T R A C E A T 3

S T O P

E N D 図 ②

.P 一OD

−000TN

一SE

③あるステートメントより後のデバッグをしたい時,たとえばステートメント10よりSTOP までTRACEを行ない,かつその間の特定の変数,たとえばFとCをINITしたいときは,図③ の よ う に す る 。

13.ENCODE/DECODE文(文法書P.47〜48参照)

書式つきWRITE/READ文と似た機能をもつが入出力装證を操作しないで,コア上で情報を

転送する。

DECODE(2n,m,X)Y

これを実行すると変数Xで与えられる番地を先頭として連続した2n個の文字が,ステート メントmのFORMAT様式にしたがって,入出力並びYに格納される。

ENCODE(2n,m,X)Y

入出力並びYで与えられる2n文字の情報は,ステー.トメントmのFORMAT様式にしたがっ て,変数Xで与えられる番地から順番に格納される。

例 D A T A C H / 4 H C D A B /

(4byte)

野野

(2byte) (4byte)

(2byte) (2,45,CH)IS1

(A2)

(4,55,CH)IS2 (2X,A2)

(4,65,S3)IS2,IS1 (2A2)

C H IS1 C H IS2 I S 2 S 3

ETETET DADADA OMOMOM CRCRCR EOEONO DFDFEF

555456 }

} → {

} r競二詰謁

14.FILES文(文法書P、49〜53参照)

磁 気 テ ー プ 装 澄 や 紙 テ ー プ 読 取 装 置 で デ ー タ 入 出 力 を 行 う と き は F I L E S 文 を , ソ ー ス カ ー ド の実行文よ!)前に挿入しなければならない。

↓ 第 7 カ ラ ム u : フ ァ イ ル 参 照 番 号 ( 1 〜 3 2 7 6 7 ) F I L E S u ‑ d ( 様 式 指 定 ) d : 装 澄 名 ( た と え ば M T , P T R な ど )

新 し い 磁 気 テ ー プ を 使 用 す る と き は , 1 6 . に 述 べ る コ ン ト ロ ー ル カ ー ド ¥ E X F O R T R A N の前に,

¥VOLINIT,MTO1,VOL=0123,OWNER=YUKARI,NEW,DEN=800

な る コ ン ト ロ ー ル カ ー ド を 挿 入 す る 。 ま た F I L E 文 を 使 用 す る と き は ¥ E X F . F T M A I N の あ とに¥FD文を挿入する。

例FLES3MT(RECFM=F,BL=64,RL=60)・・MTの記録様式を固定長,1レコード60 F I L E S 2 ‑ P T R b y t e , 1 ブ ロ ッ ク 6 4 b y t y に 指 定 す る

READ(2,5)(X(I),I=1,10) 5FORMAT(F5.0)

WRITE(8,15)(X(I),I=1,10) 15FORMAT(10F6.0)

… フ ァ イ ル 参 照 番 号 2 の 装 設 よ り デ ー タ を 読 み 込 む

… フ ァ イ ル 参 照 番 号 8 の 装 証 へ デ ー タ を 書 き 出 す

¥ E X F ・ F T M A I N

¥FDUO1,8,MTO1,FILE=YUKARI…MTのファイル参照番号を8にする

¥FDUOO,2,PROO,CODE=4…PTRのファイル参照番号を2,コード指定4と す る

15.計算糖度と計算速度

基本外部関数(SQRT,SIN,EXP,ALOG10,ATAN)について,引数がO.1〜10.0の間で,

BOSとBOSIIについて比較を行なった。速度についてはおおよそBOSIIの方が2倍になり,

また精度については,EXPがBOSIIにおいてやや糖度がよくなっている他はほとんど同じで あった。

16.通常のBOSIIFORTRANコントロールカードの並べ方

¥ J O B … j o b の 始 ま I )

¥FDSYSLST,LPOO……SYSLSTをlineprinterに割り当てる。

¥FDOLIB,DPOO,FILE=OLIB……OLIB(オブジェクトプログラムの格納領域)をDP に割り当てる。

¥EXFORTRAN,DPOO,SYG.PLIB……DP上にあるFORTRANコンパイラを呼び出 しコン'ぐイルを実行する。

/PARALIST,MAP……ソースカードのlistとコアマップの表示を指定する。

ソ ー ス カ ー ド

E N D

¥EXLIED,DPOO,SYG.PLIB…DP上の1.TFDを呼び出し稽合編集してオブジェクトプ ログラムを作成する。

/PARAOUT=F.FTMAIN,LIST,ALL‑MOD…オブジェクトプログラムの出力表示を指定

¥EXF.FTMAIN,OLIB…オブジェクトプログラムの実行開始

¥JEND……job終了

FORTRANコン'ぐイラ,LIEDプログラムをDP上にとるため,それらを呼び出す時間がそれ ぞれ約17sec,8sec要する。またオブジェクトプログラムをDPから呼び出すための時間が,た とえばソースカード60枚のプログラムで7sec要する。すなわち,DPの使用による呼び出し時間 として約30sec必要とする。

− 研 究 一

ラ イ ン プ リ ン タ ー に よ る グ ラ フ 不 表一(1)

§1.はじめに 物 理 地 学 数 値 実 験 グ ル ー プ

これまで,プリントされた結果を再び読みとってグラフ用紙にプロットしていた方がおられ るかもしれない。しかし,計算機ラインプリンターで直接グラフを描かせると,少々精度はお ちるかもしれないが,全体の様子をつかむには充分役立つものがえられる。我々のところでも,

地球内部の研究のため種々の計算を行い,それらの結果を上記の方法でプリントし,全体の様 子をつかんだり,直接又はそのままトレースして,スライドにしたりしてきた。

これらグラフ表示のプログラムは,サブルーチンにしておくのがよい。パラメターさえ変え てやれば,各人の目的にあったグラフを描かせることができる。しかし,一つのサブルーチン で全ての場合をふくませることは,実際の使用のさいわずらわしくなるので,機能別にサブル

ーチンをわけておく方がよい。我々のところで実際に使用しているものは次の第1表に示すと おりである。他に開発中のものもある。

の ゲ ラ ー フ の 蝿 の 範 囲 は プ 面 の範囲,あ島

.Y2の範囲は

fPPPPF定AAAAAAA KRRRRRn

i の 範 囲 は 共 通 Yの範囲,あ,

の 姉 囲 . あ ら か

こ れ ら は , 研 究 分 野 に よ ら ず , 一 般 に 利 用 で き る も の で あ る 。 そ こ で 以 下 に , 数 回 に わ た っ て , そ の 使 用 方 法 を 説 明 し た い 。

こ こ で 述 べ る こ と は , 別 に 新 ら し い こ と で は な い 。 す で に 同 様 の プ ロ グ ラ ム を 多 く の 方 が 使 用 さ れ て い る は ず で あ る 。 願 わ く ば , 御 批 判 や , お 手 も ち の プ ロ グ ラ ム の 紹 介 を し て い た だ き

た い 。 次 の 改 定 の 機 に そ な え た い 。

な お , X Y プ ロ ッ タ ー が 導 入 き れ れ ば , 精 度 の 商 い 図 形 の 出 力 は , そ れ を 利 用 す る こ と に な る で あ ろ う 。 し か し そ れ ほ ど 精 度 が 必 要 で な け れ ば , プ ロ グ ラ ム の 簡 単 さ , 出 力 速 度 等 か ら い っ て , な お ラ イ ン プ リ ン タ ー に よ る グ ラ フ 表 示 の 利 点 は の こ る は ず で あ る 。

§2.ラインプリンターによるグラフ表示の基本的な考え方

苑 を 独 立 変 数 と す る 関 数 " = / ( x ) は M A I N P R ・ で 値 が き ま っ て い る と す る 。

(1)まず,〃やxの値をラインプリンター上の行や列の値に換算しなければならない。それに

は,

。〃の値の範囲(","i"〜〃疵α垂)

・ 蕗 の 値 の 範 囲 と x の き ざ み , 又 は 苑 が 等 間 隔 の と き 妬 の 個 数 ( 行 の 数 が き ま る )

・ラインプリンターへうちだす一行の長き(LINMX,用紙の巾に限度がある。媛大130字)

。 ( ラ イ ン プ リ ン タ ー へ う ち だ す 行 の 数 に は き び し い 制 限 は な い 。 x の 個 数 と 関 係 ) が 決 ま っ て い な け れ ば な ら な い 。

このとき,第1図の関係から,関数値 をラインプリンター上の1〜LINMXの値I〃に変 換する。

LINMX=I型加αェ

IU

1

〃、f宛 〃 〃"α工

IⅣ= 〃 − 〃 沈 鋺 x(LINMX‑1)

g 堀 α 工 − 9 加 加

gがLogスケールや指数スケールのときは,あらかじめ"'=1og","'=exp(")と変換してお

けば,上式がつかえる。

(2)I"のプリント。I〃をそのままプリントしたのでは,1〜LINMXの数値がでるだけで

あ る 。 グ ラ フ に す る た め に は 基 線 か ら I y ( + 1 ) 番 目 の 位 遼 に 記 号 ( 1 と か * と か ) が 打 出されなければならない。それには,列の数(LINMX)だけDIMENSIONをもった配 列を用意し,まず,全ての内容を(文字)空白にした上で,I"(+1)番目の内容に(文字)

記 号 を 代 入 す る 。 そ し て , そ の 配 列 全 部 を A タ イ プ で 出 力 す る 。 次 の 妬 に 移 る 。

FAに'』M230−ハノ調FしRTRArU−F10h』6−0011−02 岳各骨SOljRCFI1STe骨骨

7 2 . 0 6 . 0 2 P A G E 』

N1234う

SrATf・'FNT

f各骨骨骨骨骨毎己pR()6R ,TFSTOFSURROUT1NE6RAPH4吾吾骨骨暑197'・う・ ・・・.・・

DIMF,'bIONY(100.1 、x《100)

、Cl旧1FいTFGrR1CPT n n l J 宮 1 . 1 0

,011画10う1 A1(1−1)

。〕骨FLOAT(J)吾FIOAT(1−1》

8 1 C O N T 1 M j E

−9 10

|狸一喝一恥

15 16 17 18 19 20

rAI.LCl、〔K( しPT)

CPT画1〔pT CPT軍〔PTノf》ooO wR1TF(602)Cト′T wR1Tf 94)】LpT 4FoRHAI《1HOoll4》

?4

,5 26 77 8 29 30 31

CPT■ILPT fPT■CトjTノ60.O WRITf 9?)C卜T WRlTt(60 ILPT FnRM&1《1脚()・1M)

fnNT1IdUE STOP FND

うり

FACノM290−yうノ FしRTRAN‑710bl6‑0011−O2 骨暑らSOURCFlIS1骨骨骨

7 2 . u 6 . 0 1 P A G E ユ

N1234う678901234う678901234567890123

s1111111111?2222?22223339

STAT上隈FN1

SU8ROuTIrdEGhAPH4(XoNxQYoIW・YHIN9YHAx9NHOD)

FuNCIIoNY110YluAkEPLuTTEDONGRAPHwHICHISDIvIDEDBYloOSEGMENTS・

D1HE知SIOr凶X(hX)9Y《1000NY)、PLO《101)・FGY《12〕

DATA卜GYノlHユ、1H2.1H3,1H4,1Hう・1H6・lH7、1H8.1H9・ユHO01H・ユH◆ノ LINHX=101

F11N脾入容L1NHX−1 wRITI・ 、 01)YHIh・YHAX FORM'・1《1『1.8八・F8.3o92X9f5・

WRITF《60202)

FORMA1《lI101ンX,10(lH骨・9《1fl.))01H骨)

DO?uKごl・NX DO1ぃ1回10LINHX PLO(1)=F《,Y(11》

CONTlNUE DO30N耳1.NY

YS堂FllNMx員《Y(K・N)−YMlN)ノ(Y閏AX=YMlN)◆1.5 PIO(1)■FbY(lと)

PLO(LlNMA)mF。Y(12)

IF《Y5.GTo卜LOAT(LIr、閲X))YS=FLINHX◆1.5 1F(YS・LT、1.)YS■1・う

IY■IflX(Yご)

PIO(IY1■卜GY(N)

てONTIrdUE

IF(H()1)《X・NHOし)・Eu・1)wR1T上(6.101)X(K)。(PLO(1)。i=19LlNMX)

FORMA1(lf1◆9F1,.3,101A1ノ》

IF(HCI)《K・NMOし》0M卜01)wR1Tr(60102)(PLO(1)91写1.LINMX》

FORMAI〔1制令。lとXC101A1ハ CONTlNUE

WR1Tl ・PU3)

FORMAI 《1『1◆91とXヤユし《1H骨99(1H、))01H骨)

WRIT上《602u1)YMlF、、YHAX RFTl昨N

FND

2もjl

'U2

10

う0 1巴1

ユU2

?0

?(j3 NX■51 NY写10

■ ■ ■ ロ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■

YMIN■u,0

YHAX=100.0 NHODごう

ccつ①︒︒﹃○ccの︒

*C●●●●・●●●*・・・・・●●●●*.●●●・●●●●*・●●・・●●・●*.●●●●・・・・中・・●・●・・・●*・●・・・・●●●*・●●・・・●●●*●︒●●●●・●●*.・・●●●●・●*

︒C︑寺︑園﹃◆CcoCom

o︒⑮ぐ両国司◆︒C⑳句両曲﹃◆

◎卜︒︑寺向由﹃◆︒トつぬぐ両慰﹃◆ ︒↑④︑寺両へ﹃◆○つ︒●鈩寸 ︒卜①炉寺n劃﹃◆︒卜︒心句両和﹃◆︒岸︒小寺例へ﹃◆ ︒⑮卜︒心寺両へ﹃◆ ︒②卜C小q︹釦︻◆︒︵︾c●C寺 ︒唾炉@ぬぐぬm﹃◆︒四卜⑲︑苛両釦︻◆︒の岸心小苛珂へ戸◆ ︒⑥唾卜︒ハ苛於慰﹃◆ ︒◎垂卜④小寺︑へ﹃◆C.○・かび ︒ひ霞卜心︑句︑耐﹃◆ ◆.︒卒垂↑つm々缶蜘﹃◆

十CG垂卜C︑薄命的﹃◆

◆○ひの卜④︑苛毎四︻◆ 十○のの卜︒︑寸伊へ一◆Cつ︒●C︑ ◆Cか⑮﹄屯心句﹁へ一◆ ◆◎の四トc︑オ便釦◆

◆◎ののトc炉垂侭へ◆

◆◎歩函↑の句◆

炉毎釦﹃

◆○のの卜C炉寸伊◆こつ︒●いへ 耐一 ◆○ケの︿C︑苛鈩へ◆

◆○ケ唾卜○心句︑蜘十

◆○口垂岸C心寺︑◆

ドキュメント内 広 報 (ページ 30-36)

関連したドキュメント