ページ概要
このページは工学問題に関する色々なプログラムを蓄えておく部屋です.
このページは工学問題に関する色々なプログラムを蓄えておく部屋です.
Filename | Description |
---|---|
f90_MARSTON.txt | Program to calculate the vertical load for embedded pipe by Marston's formula. |
tex_marston.pdf | Small document for Marston's formula |
Filename | Description |
---|---|
en_TeX_ams.pdf | 座屈圧力算定公式を示す文書 |
f90_AMS_org.txt | Amstutzの式による座屈圧力算定プログラム (Amstutz original 1970) |
f90_AMS_JPN.txt | 水門鉄管技術基準による座屈圧力算定プログラム (Standard in japan) |
gpl_AMS.txt | gnuplot作図用スクリプト |
fig_AMS_org.png | Amstutzの式による座屈圧力算定結果事例 (初期不整の効果) |
fig_AMS_JPN.png | Amstutzの式と水門鉄管技術基準による座屈圧力算定結果比較事例 |
!Lorentz type+linear curve (mpara=5) input file: inp_SIMP_0.csv Vfunc=param(2)*param(1)**2.0D0/((x-param(0))**2.0D0+param(1)**2.0D0)+param(3)+param(4)*x
!Damped oscillation (mpara=4) input file: inp_SIMP_1.csv Vfunc=param(0)*exp(-param(1)*x)*sin(param(2)*x+param(3))
001 | Simplex_test_1 002 | time_(sec),Displacement_(mm) 003 | N,0,800,100,"%.0f" 004 | N,-10,10,2,"%.0f" 005 | 800 006 | 0.000,2.543 007 | 1.000,3.402 008 | 2.000,2.978 ..........
このプログラム 'f90_SIMPLEX.exe' を実行するためには,(1) 入力データファイル名, (2) 出力データファイル名, (3) 出力画像ファイル名(gnuplot用), (4) Simplex法による回帰のための初期値をコマンドラインから入力する必要があります.
gfortran -o f90_SIMPLEX.exe f90_SIMPLEX.f90 f90_SIMPLEX inp_SIMP_0.txt out_SIMP_0.txt fig_SIMP_0.png 1 1 1 1 1
Filename | Description |
---|---|
f90_SIMPLEX.txt | Simplex法曲線回帰プログラム |
inp_SIMP_0.txt | 入力データサンプル (1) |
out_SIMP_0.txt | 出力データサンプル (1) |
fig_SIMP_0.png | 画像出力サンプル (1) |
inp_SIMP_1.txt | 入力データサンプル (2) |
out_SIMP_1.txt | 出力データサンプル (2) |
fig_SIMP_1.png | 画像出力サンプル (2) |
KN No.1 Headrace ST (Load interception) Hg,Q0,L,d0,c,Cd,zm,xc,yc 713,340,2553.370,8.2,0.179,0.9,35,4.6,17
Hg | 総落差 (m) |
Q0 | 最大使用水量 (m3/s) |
L | 圧力水路延長 (m) |
d0 | 圧力水路内径 (m) |
c | 損失水頭係数 |
Cd | 制水口の流量係数 |
zm | 設計者により与えられる目標最高上昇水位 (m) |
xc | 選定した制水口内径 (m) |
yc | 選定したサージタンク立坑内径 (m) |
gfortran -o f90_surgeSCVF.exe f90_surgeSCVF.f90 f90_surgeSCVF inp_scvf_Load.csv fig_scvf_Load_SC.eps fig_scvf_Load_VF.eps
Filename | Description |
---|---|
en_TeX_SURGE.pdf | 制水口式サージタンク設計理論を示す文書 |
f90_surgeSCVF.txt | 基本設計のためのプログラム |
inp_scvf_Load.txt | 入力サンプルデータ (負荷遮断) |
fig_scvf_Load_SC.png | 出力事例図 (負荷遮断時動的安定条件) |
fig_scvf_Load_VF.png | 出力事例図 (負荷遮断時最高上昇水位) |
KN No.1 Tailrace ST (Load interception: 4 units) //: Title 1,70.0,210.0 //: ICT,AFCA,AFCT 600.0,0.01,0.1 //: TMAX,dt,DTWR 18.857,0.9,0.9 //: PAA,PCI,PCO 814.000,2167.752,52.810,0.166 //: RWL,TNL,TNA,TNC 3 //: NST 520.000,865.000,Top_of_Surge_Tank //: SAA(1),SEL(1),SLB(1) 520.000,854.050,Bottom_of_Chamber //: SAA(2),SEL(2),SLB(2) 78.540,727.600,Bottom_of_Surge_Tank //: SAA(3),SEL(3),SLB(3) 3 //: NQT -340,0 //: QTQ(1),QTI(1) 0,8 //: QTQ(2),QTI(2) 0,9999 //: QTQ(3),QTI(3)
Title | タイトル |
ICT | 計算ケース (1: normal, 2: AFC) |
AFCA | AFC運転時の片振幅流量 (m3/s) |
AFCT | AFC周期 (s) |
TMAX | 計算終了時刻 (s) |
dt | 計算時間間隔 (s) |
DTWR | 結果出力時間間隔 (s) |
PAA | 制水口断面積 (m2) |
PCI | 制水口流量係数(流入時) |
PCO | 制水口流量係数(流出時) |
RWL | 貯水池水位標高 (EL.m) |
TNL | 圧力トンネル延長 (m) |
TNA | 圧力トンネル断面積 (m2) |
TNC | 圧力トンネル損失水頭係数 (s2/m) |
NST | 入力するサージタンクの断面の数 |
SAA(i) | 指定標高におけるサージタンクの断面積 (m2) |
SEL(i) | 断面積を入力するサージタンクの標高指定 (EL.m) |
SLB(i) | 断面の名称 (text: 作図用) |
NQT | 流量入力点数 |
QTQ(i) | 指定時刻での流量 (m3/s) |
QTI(i) | 時刻指定 (s) |
gfortran -o f90_SURGE.exe f90_SURGE.f90 f90_SURGE inp_surge_Ha.csv out_surge_Ha.csv f90_SURGE inp_surge_Hc.csv out_surge_Hc.csv f90_SURGE inp_surge_Ta.csv out_surge_Ta.csv f90_SURGE inp_surge_Tc.csv out_surge_Tc.csv gfortran -o f90_DRAW_SURGE.exe f90_DRAW_SURGE.f90 f90_DRAW_SURGE out_surge_Ha.csv fig_surge_Ha.eps f90_DRAW_SURGE out_surge_Hc.csv fig_surge_Hc.eps f90_DRAW_SURGE out_surge_Ta.csv fig_surge_Ta.eps f90_DRAW_SURGE out_surge_Tc.csv fig_surge_Tc.eps
Filename | Description |
---|---|
f90_SURGE.txt | 制水口式サージタンクのサージング解析プログラム |
f90_DRAW_SURGE.txt | gnuplotによる作図プログラム |
inp_surge_Ha.txt | 入力サンプルデータ (導水路水槽: 負荷遮断) |
inp_surge_Hc.txt | 入力サンプルデータ (導水路水槽: 入力遮断) |
inp_surge_Ta.txt | 入力サンプルデータ (放水路水槽: 負荷遮断) |
inp_surge_Tc.txt | 入力サンプルデータ (放水路水槽: 入力遮断) |
fig_surge_Ha.png | 出力サンプル図 (導水路水槽: 負荷遮断) |
fig_surge_Hc.png | 出力サンプル図 (導水路水槽: 入力遮断) |
fig_surge_Ta.png | 出力サンプル図 (放水路水槽: 負荷遮断) |
fig_surge_Tc.png | 出力サンプル図 (放水路水槽: 入力遮断) |
gfortran -o f90_TUNNEL.exe f90_TUNNEL.f90 f90_TUNNEL bat_HT1.bat fig_eps_HT1.eps 0 8200 550 0 6000 100 100 f90_TUNNEL bat_HT2.bat fig_eps_HT2.eps 0 6100 550 0 5000 100 100 f90_TUNNEL bat_PS1.bat fig_eps_PS1.eps 1 5400 600 300 5000 100 100 f90_TUNNEL bat_PS2.bat fig_eps_PS2.eps 1 3000 500 100 3000 100 100
コマンドラインの入力データ並びは以下のとおり
f90_TUNNEL fnameW fnameF ksp DIA Tc Tx W ts tp
f90_TUNNEL | 実行用プログラム |
fnameW | GMT実行用バッチファイル名 |
fnameF | 出力画像ファイル名(eps) |
ksp | 0: 鉄管無し, 1: 鉄管有り |
DIA | トンネル内径 |
Tc | 覆工コンクリート厚 |
Tx | インバート部付加コンクリート厚 |
W | インバートコンクリート幅 |
ts | 吹付コンクリート厚 |
tp | 設計線と支払線の間の厚さ |
Filename | Description |
---|---|
f90_TUNNEL.txt | GMT による作図プログラム |
bat_PS1.txt | 出力されたGMT実行用バッチファイル事例 (fig_eps_PS1.eps用) |
fig_eps_HT1.png | 出力画像 (1) |
fig_eps_HT2.png | 出力画像 (2) |
fig_eps_PS1.png | 出力画像 (3) |
fig_eps_PS2.png | 出力画像 (4) |
TeX-TUNNEL.pdf | eps を TeX 文書に貼り付けた事例 |
出力図中の記号の意味は以下のとおり.
Ae | 支払線による掘削断面積 |
Ce | 設計線によるコンクリート断面積 |
Ls | 設計線による吹付長 |
ΔCe | 支払線と設計線によるコンクリート断面積の差分 |
ΔLs | 支払線と設計線による吹付長の差分 |
gfortran -o f90_MANNING_CIRC.exe f90_MANNING_CIRC.f90 gfortran -o f90_MANNING_RECT.exe f90_MANNING_RECT.f90 f90_MANNING_CIRC 1.50 0.06649 0.015 > inp_manning_circ.txt f90_MANNING_RECT 3.00 0.00500 0.015 > inp_manning_rect.txt
コマンドラインの入力データ並びは以下のとおりです.
f90_MANNING_CIRC DD ii nn > fnameW f90_MANNING_RECT BB ii nn > fnameW
f90_MANNING_CIRC | 円形断面用 F90 実行プログラム |
f90_MANNING_RECT | 矩形断面用 F90 実行プログラム |
fnameW | 出力ファイル名 (text file) |
DD | 円形断面水路の内径 |
BB | 矩形断面水路の幅 |
ii | インバート勾配 |
nn | Manning の粗度係数 |
Filename | Description |
---|---|
f90_MANNING_CIRC.txt | 円形断面水路のH-Q関係計算用プログラムソース |
f90_MANNING_RECT.txt | 矩形断面水路のH-Q関係計算用プログラムソース |
bat_manning_circ.txt | 円形断面水路用 GMT 作図用バッチファイル |
bat_manning_rect.txt | 矩形断面水路用 GMT 作図用バッチファイル |
fig_manning_circ.png | 円形断面水路H-Q曲線作図事例 |
fig_manning_rect.png | 矩形断面水路H-Q曲線作図事例 |
gfortran -o f90_SFM.exe f90_SFM.f90 f90_SFM dat_sfm1.csv out_test1.csv 3 1 10 f90_SFM dat_sfm2.csv out_test2.csv 3 1 10 f90_SFM dat_sfm3.csv out_test3.csv 4 1 10 f90_SFM dat_sfm4.csv out_test4.csv 2 1 10 f90_SFM dat_sfm5.csv out_test5.csv 2 1 10 f90_SFM dat_sfm6.csv out_test6.csv 8 1 10 call bat_gmt_ctl_qcss call bat_gmt_ctl_sfm
コマンドラインの入力データ並びは以下のとおりです.
f90_SFM fnameR fnameW n1 m md
f90_SFM | 貯留関数推定用 F90 実行プログラム |
fnameR | 入力ファイル名 |
fnameW | 出力ファイル名 |
n1 | 基底流量分離開始点 |
m | 基底流量分離方法(0:水平分離[固定値],1:傾斜直線分離[最適値検索]) |
md | 時間増分の分割数(1以上の整数) |
Filename | Description |
---|---|
f90_SFM.txt | 貯留関数パラメータ推定用プログラムソース |
dat_sfm1.txt | 入力データ例(1) |
dat_sfm2.txt | 入力データ例(2) |
dat_sfm3.txt | 入力データ例(3) |
dat_sfm4.txt | 入力データ例(4) |
dat_sfm5.txt | 入力データ例(5) |
dat_sfm6.txt | 入力データ例(6) |
bat_gmt_ctl_qcss.txt | qc-S 関係作図用 GMT バッチファイル(コントロール用) |
bat_gmt_plt_qcss.txt | qc-S 関係作図用 GMT バッチファイル(作図コマンド用) |
bat_gmt_ctl_sfm.txt | ハイドログラフ作図用 GMT バッチファイル(コントロール用) |
bat_gmt_plt_sfm.txt | ハイドログラフ作図用 GMT バッチファイル(作図コマンド用) |
TeX_SFM.pdf | 理論と解析事例紹介文書 |
gfortran -o f90_SFMQ.exe f90_SFMQ.f90 f90_SFMQ dat_sfm1Q.csv out_test1Q.csv 10 call bat_gmt_ctl_sfmQ
コマンドラインの入力データ並びは以下のとおりです.
f90_SFMQ fnameR fnameW md
f90_SFMQ | ハイドログラフ推定用 F90 実行プログラム |
fnameR | 入力ファイル名 |
fnameW | 出力ファイル名 |
md | 時間増分の分割数(1以上の整数) |
Filename | Description |
---|---|
f90_SFMQ.txt | ハイドログラフ推定用プログラムソース |
dat_sfm6Q.txt | 入力データ例 |
bat_gmt_ctl_sfmQ.txt | ハイドログラフ作図用 GMT バッチファイル(コントロール用) |
bat_gmt_plt_sfmQ.txt | ハイドログラフ作図用 GMT バッチファイル(作図コマンド用) |
fig_SFM6Q.png | グラフ出力事例 |
Method | Stability condition | |
---|---|---|
Runge-Kutta | dt/Tk<=0.45 | Tk>=0.022 sec.(dt=0.01 sec.) |
Linear Acceleration | dt/Tk<=0.55 | Tk>=0.018 sec.(dt=0.01 sec.) |
gfortran -o f90_ARS_RUNGE.exe f90_ARS_RUNGE.f90 f90_ARS_RUNGE dat_acc_TCGH16_EW2.csv dat_spc_TCGH16_EW2.csv f90_ARS_RUNGE dat_acc_TCGH16_NS2.csv dat_spc_TCGH16_NS2.csv f90_ARS_RUNGE dat_acc_TCGH16_UD2.csv dat_spc_TCGH16_UD2.csv
コマンドラインの入力データ並びは以下のとおりです.
f90_ARS_RUNGE fnameR fnameW
f90_ARS_RUNGE | 応答スペクトル計算用 F90 実行プログラム |
fnameR | 入力ファイル名 |
fnameW | 出力ファイル名 |
Filename | Description |
---|---|
f90_ARS_RUNGE.txt | F90 地震応答スペクトル計算プログラム |
dat_acc_TCGH16_EW2.txt | 入力データファイル事例 (1) |
dat_acc_TCGH16_NS2.txt | 入力データファイル事例 (2) |
dat_acc_TCGH16_UD2.txt | 入力データファイル事例 (3) |
dat_spc_TCGH16_EW2.txt | 出力データファイル事例 (1) |
dat_spc_TCGH16_NS2.txt | 出力データファイル事例 (2) |
dat_spc_TCGH16_UD2.txt | 出力データファイル事例 (3) |
en_TeX_RUNGE.pdf | 理論説明文書 |
gfortran -o f90_RCmSD.exe f90_RCmSD.f90 rem iflag hh bb dd_t dd_c As_t As_c MO f90_RCmSD 1 7.5 25 2.5 0.0 3.925 0.0 8013
コマンドラインの入力データ並びは以下のとおりです.
f90_RCmSD iflag hh bb dd_t dd_c As_t As_c MO
f90_RCmSD | コンパイル済み実行プログラム |
iflag | 1: 単鉄筋, 2: 複鉄筋 |
hh, bb | 断面高さ, 断面幅 |
dd_t, dd_c | 引張縁-引張鉄筋距離, 圧縮縁-圧縮鉄筋距離 |
As_t, As_c | 引張鉄筋断面積, 圧縮鉄筋断面積 |
MO | 作用モーメント (正値) |
gfortran -o f90_RCmntD.exe f90_RCmntD.f90 rem hh bb dd_t dd_c As_t As_c MO AF f90_RCmntD 350 1000 60 60 1570 1570 140000000 160000
コマンドラインの入力データ並びは以下のとおりです.
f90_RCmntD hh bb dd_t dd_c As_t As_c MO AF
f90_RCmntD | コンパイル済み実行プログラム |
hh, bb | 断面高さ, 断面幅 |
dd_t, dd_c | 引張縁-引張鉄筋距離, 圧縮縁-圧縮鉄筋距離 |
As_t, As_c | 引張鉄筋断面積, 圧縮鉄筋断面積 |
MO | 作用モーメント (正値) |
AF | 作用引張軸力 (正値) |
Filename | Description |
---|---|
f90_RCmSD.txt | 純曲げを受けるRC断面の応力計算プログラムコード |
f90_RCmntD.txt | 曲げと軸引張を受けるRC断面の応力計算プログラムコード |
gfortran -o f90_CPT.exe f90_CPT.f90 f90_CPT inp_CPT_comp.csv out_CPT_comp.csv
f90_CPT | コンパイル済み実行プログラム |
inp_CPT_comp.csv | 入力データファイル名 |
out_CPT_comp.csv | 出力データファイル名 |
ファイル名 | 概要 |
---|---|
f90_CPT.txt | 円形圧力トンネル構造計算プログラムコード |
inp_CPT_comp.txt | 入力データ事例 |
out_CPT_comp.txt | 出力データ事例 |
TeX_CPTT.pdf | 計算理論解説書 |
TeX_CPTT_FEM.pdf | FEMによる円形圧力水路設計検討事例 |
call getarg(1,dummy1) call getarg(2,dummy2) call getarg(3,dummy3) call getarg(4,fnameR) read(dummy1,*) icase read(dummy2,*) Q0 read(dummy3,*) h0 open(11,file=fnameR,status='old') read(11,*) nd do i=1,nd read(11,'()') read(11,*) k,xx(i),zz(i),nas(i),ninp(i) do j=1,nas(i) read(11,*) hh(i,j),area(i,j),wper(i,j),wids(i,j) end do end do close(11)
nd | 計算断面数 |
k | 断面番号(任意) |
xx(i) | 計算開始点からの水平距離程 |
zz(i) | 水路床標高 |
nas(i) | 各断面で入力する水位-断面積・潤辺関係の数 |
ninp(i) | 粗度係数 |
hh(i,j) | 水位(水路床直交方向) |
area(i,j) | 指定水位での通水断面積 |
wper(i,j) | 指定水位での潤辺 |
wids(i,j) | 指定水位での水面幅 |
断面の並びは,計算開始点から終了点に向かう並びとする. すなわち,常流計算では解析領域の下流端から上流端に向かう順番,射流計算では解析領域の上流端から下流端に向かう順番で並べる.
gfortran -o f90_NUF.exe f90_NUF.f90 f90_NUF 10 430.92 1.958 inp_open.txt > outQ0430.txt
f90_NUF | コンパイル済み実行プログラム |
10 | icase=10: 常流,icase=20: 射流 |
430.92 | Q0 : 計算開始点での流量 |
1.9582 | h0 : 計算開始点での水深 |
inp_open.txt | fnameR : 入力データファイル名 |
outQ0430.txt | 出力データファイル名 |
x1 | 距離程 |
Q1 | 流量 |
a1 | 断面積 |
t1 | 水面幅 |
h1 | 水深(水路床直交方向) |
z1 | 河床標高 |
h1+z1 | 水位標高 |
v1 | 平均流速 |
E1 | エネルギー標高 |
Fr | フルード数 |
hc | 限界水深(水路床直交方向) |
it | 収束に要した繰り返し回数 |
ファイル名 | 概要 |
---|---|
f90_NUF.txt | 不等流解析プログラムコード |
inp_open.txt | 入力データ事例 |
outQ0430.txt | 出力データ事例 |
TeX_nuf.pdf | 計算事例紹介 |
gfortran -o f90_floodr.exe f90_floodr.f90 f90_floodr inp_kusan_hv.txt inp_kusan_pmf_0.txt > test0.txt f90_floodr inp_kusan_hv.txt inp_kusan_pmf_1.txt > test1.txt
f90_floodr fnameR1 gnameR2 > fnameW
f90_floodr | コンパイル済み実行プログラム |
fnameR1 | 貯水池水位-容量曲線入力ファイル |
fnameR2 | 洪水波形入力ファイル |
fnameW | 出力ファイル |
vcoef rh(1) rv(1) rh(2) rv(2) rh(3) rv(3) ... ...
vcoef | 容量に乗じる係数 |
rh(i) | 水位標高 |
rv(i) | 累加容量 / vcoef |
ELini outlet ti(1) q_in(1) ti(2) q_in(2) ti(3) q_in(3) ... ...
ELini | 初期水位標高 (EL.m) |
outlet | 放流設備放流量(一定値) (m3/s) |
ti(i) | 時刻 (hour) |
q_in(i) | 流入量 (m3/s) / vcoef |
i | 計算ステップ |
iUD | 水位上昇・下降の指標(1:水位上昇,-1:水位降下) |
ti | 時刻 (hour) |
EL | 貯水池水位標高 (EL.m) |
EL-elv | 水位誤差 (m) |
VOL | 貯水池累加容量 (m3) |
q_in | 流入量 (m3/s) |
q_out | 流出量 (m3/s) |
ファイル名 | 概要 |
---|---|
f90_floodr.txt | 洪水時貯水池水位解析プログラムコード |
inp_kusan_hv.txt | 貯水池水位-容量曲線入力データ事例 |
inp_kusan_pmf_0.txt | 洪水波形入力データ事例(1) |
inp_kusan_pmf_1.txt | 洪水波形入力データ事例(2) |
a_gmt.txt | 作図用GMTスクリプト(バッチファイル) |
awk_klegend.txt | 凡例描画用 awk スクリプト |
fig_test0.png | 解析結果事例(1) |
fig_test1.png | 解析結果事例(2) |