Java (7) Lesson = (1) 1 m 3 /s m 2 5 m 2 4 m 2 1 m 3 m 1 m 0.5 m 3 /ms 0.3 m 3 /ms 0.6 m 3 /ms 1 1 3

Similar documents
: : : TSTank 2

Java (5) 1 Lesson 3: x 2 +4x +5 f(x) =x 2 +4x +5 x f(10) x Java , 3.0,..., 10.0, 1.0, 2.0,... flow rate (m**3/s) "flow

Java (9) 1 Lesson Java System.out.println() 1 Java API 1 Java Java 1

Microsoft Word - keisankigairon.ch doc

K227 Java 2

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

10K pdf

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

oop1

ALG ppt

r1.dvi

I java A

(Eclipse\202\305\212w\202\324Java2\215\374.pdf)

Microsoft PowerPoint ppt


ALG ppt

226

untitled

ALG2012-A.ppt

8 if switch for while do while 2

3 Java 3.1 Hello World! Hello World public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World");

ALG2012-F.ppt

Prog2_9th

text_08.dvi

untitled

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

r02.dvi

ohp02.dvi

明解Javaによるアルゴリズムとデータ構造

JavaプログラミングⅠ

Java演習(2) -- 簡単なプログラム --

JAVA とテンプレート

プログラミングA

untitled


JavaプログラミングⅠ

6-1

2.2 Java C main Java main 2 C 6 C Java 3 C Java ( ) G101Hello.java G101Hello main G101Hello.java /* G101Hello */ class G101Hello { /* main */ public s

Thread

新・明解Javaで学ぶアルゴリズムとデータ構造

(Basic Theory of Information Processing) 1

class IntCell { private int value ; int getvalue() {return value; private IntCell next; IntCell next() {return next; IntCell(int value) {this.value =

新・明解Java入門

Java updated

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

PowerPoint Presentation

明解Javaによるアルゴリズムとデータ構造

class IntCell { private int value ; int getvalue() {return value; private IntCell next; IntCell next() {return next; IntCell(int value) {this.value =

Java 3 p.2 3 Java : boolean Graphics draw3drect fill3drect C int C OK while (1) int boolean switch case C Calendar java.util.calendar A

tkk0408nari

1 Java Java GUI , 2 2 jlabel1 jlabel2 jlabel3 jtextfield1 jtextfield2 jtextfield3 jbutton1 jtextfield1 jtextfield2 jtextfield3

JavaプログラミングⅠ

JavaプログラミングⅠ

オブジェクト脳のつくり方

2: 3: A, f, φ f(t = A sin(2πft + φ = A sin(ωt + φ ω 2πf 440Hz A ( ( 4 ( 5 f(t = sin(2πf 1t + sin(2πf 2 t = 2 sin(2πt(f 1 + f 2 /2 cos(2πt(f 1 f

Program Design (プログラム設計)

JavaプログラミングⅠ

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac

デジタル表現論・第4回

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

Javaセキュアコーディングセミナー2013東京第1回 演習の解説

Microsoft PowerPoint - prog03.ppt

WinHPC ppt

PowerPoint プレゼンテーション

T554/67K

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード]

Java学習教材

解きながら学ぶJava入門編

JavaプログラミングⅠ

( ) p.1 x y y = ( x ) 1 γ γ = filtergamma.java import java.applet.*; public class filtergamma extends Applet{ Image img; Image new_img; publi

とても使いやすい Boost の serialization

r2.dvi

6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent thread, 1 GUI 6.0.2, mutlithread C

Prog1_10th


-5 -

別冊 各分野における虐待事例と分析

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

Java演習(4) -- 変数と型 --

ALG2012-C.ppt

メディプロ1 Javaプログラミング補足資料.ppt

Javaの作成の前に

Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible

. IDE JIVE[1][] Eclipse Java ( 1) Java Platform Debugger Architecture [5] 3. Eclipse GUI JIVE 3.1 Eclipse ( ) 1 JIVE Java [3] IDE c 016 Information Pr

Microsoft PowerPoint - prog04.ppt

JavaプログラミングⅠ

ex01.dvi

MPI MPI MPI.NET C# MPI Version2

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i

アルゴリズムとデータ構造1

1_cover

,,,,., C Java,,.,,.,., ,,.,, i

目的 泡立ち法を例に Comparableインターフェイスの実装 抽象クラスの利用 型パラメタの利用 比較 入替 の回数を計測

10K

新・明解Javaで学ぶアルゴリズムとデータ構造

ガイダンス

untitled

Java Java Java Java Java 4 p * *** ***** *** * Unix p a,b,c,d 100,200,250,500 a*b = a*b+c = a*b+c*d = (a+b)*(c+d) = 225

Quick Sort 計算機アルゴリズム特論 :2017 年度 只木進一

Transcription:

Java (7) 2008-05-20 1 Lesson 5 1.1 5 3 = (1) 1 m 3 /s 1 2 3 10 m 2 5 m 2 4 m 2 1 m 3 m 1 m 0.5 m 3 /ms 0.3 m 3 /ms 0.6 m 3 /ms 1 1 3

1.2 java 2 1. 2. 3. 4. 3 2

1.3 i =1, 2, 3 V i (t) 1 t h i (t) i F, k i,s i i 1 dv 1 (t) = F k 1 h 1 (t) dt (2) dv 2 (t) = k 1 h 1 (t) k 2 h 2 (t) dt (3) dv 3 (t) = k 2 h 2 (t) k 3 h 3 (t) dt (4) h 1 (t) = V 1(t) S 1 (5) h 2 (t) = V 2(t) S 2 (6) h 3 (t) = V 3(t) S 3 (7) t =0 h i (0) 0 V i (0) 3

1.4 t(2 2 V 1 (t + t) =V 1 (t)+ t(f k 1 h 1 (t)) (8) V 2 (t + t) =V 2 (t)+ t(k 1 h 1 k 2 h 2 (t)) (9) V 3 (t + t) =V 3 (t)+ t(k 2 h 2 k 3 h 3 (t)) (10) h 1 (t) = V 1(t) S 1 (11) h 2 (t) = V 2(t) S 2 (12) h 3 (t) = V 3(t) S 3 (13) 2 1 t t V i (t + t) 0 4

1.5 (t), ( t), (F ), (i =1, 2, 3), : :, : : : 1,2,3 : : : : 5

1.6 - - - main 3 6 3 Java main main

TSWaterSupply : TSClock : TSTank1 : 1 TSClock TSClock TSTank2 : TSTank1 2 TSTank3 : TSTank1 3 7

1.7 TSWaterSupply.java 1: public class TSWaterSupply { 2: private final double flowrate = 1.0; //m**3/s 3: public double getflowrate() { 4: return flowrate; 5: } 6: public static void main(string args[]) { 7: TSWaterSupply tswatersupply = new TSWaterSupply(); 8: System.out.println("Flow Rate of Water Supplu = " + tswatersupply.getflowrate()); 9: } 10: } http://130.54.13.233/lecture/java/lesson567.zip M: java 8

TSTank1.java 1 1: public class TSTank1 { 2: private final double TANK_AREA = 10; //m**2 3: private final double INITIAL_TANK_LEVEL = 1; //m 4: private final double DRAINAGE_COEFFICIENT = 0.5; //m**3/s.m 5: private double storedvolume; 6: private double inflow; 7: private TSClock tsclock; 8: 9: public TSTank1(TSClock tsclock) { 10: this.tsclock = tsclock; 11: storedvolume = INITIAL_TANK_LEVEL * TANK_AREA; 12: } 13: 14: public double gettanklevel() { 15: return storedvolume/tank_area; 16: } 17: 18: public void setinflow(double inflow) { 19: this.inflow = inflow; 20: } 21: 22: public double getinflow() { 23: return inflow; 24: } 25: 9

26: public double getdrainagerate() { 27: return DRAINAGE_COEFFICIENT*getTankLevel(); 28: } 29: 30: public void update() { 31: storedvolume += tsclock.gettimestep()*(inflow - getdrainagerate()); 32: if (storedvolume < 0) { 33: storedvolume = 0.0; 34: } 35: } 36: 37: public static void main(string args[]) { 38: TSClock tsclock = new TSClock(); 39: tsclock.settimestep(0.1); 40: TSTank1 tstank1 = new TSTank1(tsClock); 41: System.out.println("time,tank level"); 42: for (int i=0;i<100;i++) { 43: tstank1.setinflow(1.0); 44: System.out.println(tsClock.getTime() + "," + tstank1.gettanklevel()); 45: tsclock.update(); 46: tstank1.update(); 47: } 48: } 49: } 10

TSTank2.java 2 1: public class TSTank2 { 2: private final double TANK_AREA = 5; //m**2 3: private final double INITIAL_TANK_LEVEL = 3; //m 4: private final double DRAINAGE_COEFFICIENT = 0.3; //m**3/s.m 5: private double storedvolume; 6: private double inflow; 7: private TSClock tsclock; 8: 9: public TSTank2(TSClock tsclock) { 10: this.tsclock = tsclock; 11: storedvolume = INITIAL_TANK_LEVEL * TANK_AREA; 12: } 13: 14: public double gettanklevel() { 15: return storedvolume/tank_area; 16: } 17: 18: public void setinflow(double inflow) { 19: this.inflow = inflow; 20: } 21: 22: public double getinflow() { 23: return inflow; 24: } 25: 11

26: public double getdrainagerate() { 27: return DRAINAGE_COEFFICIENT*getTankLevel(); 28: } 29: 30: public void update() { 31: storedvolume += tsclock.gettimestep()*(inflow - getdrainagerate()); 32: if (storedvolume < 0) { 33: storedvolume = 0.0; 34: } 35: } 36: 37: public static void main(string args[]) { 38: TSClock tsclock = new TSClock(); 39: tsclock.settimestep(0.1); 40: TSTank2 tstank2 = new TSTank2(tsClock); 41: System.out.println("time,tank level"); 42: for (int i=0;i<100;i++) { 43: tstank2.setinflow(1.0); 44: System.out.println(tsClock.getTime() + "," + tstank2.gettanklevel()); 45: tsclock.update(); 46: tstank2.update(); 47: } 48: } 49: } 12

TSTank3.java 3 1: public class TSTank3 { 2: private final double TANK_AREA = 4; //m**2 3: private final double INITIAL_TANK_LEVEL = 1; //m 4: private final double DRAINAGE_COEFFICIENT = 0.6; //m**3/s.m 5: private double storedvolume; 6: private double inflow; 7: private TSClock tsclock; 8: 9: public TSTank3(TSClock tsclock) { 10: this.tsclock = tsclock; 11: storedvolume = INITIAL_TANK_LEVEL * TANK_AREA; 12: } 13: 14: public double gettanklevel() { 15: return storedvolume/tank_area; 16: } 17: 18: public void setinflow(double inflow) { 19: this.inflow = inflow; 20: } 21: 22: public double getinflow() { 23: return inflow; 24: } 25: 13

26: public double getdrainagerate() { 27: return DRAINAGE_COEFFICIENT*getTankLevel(); 28: } 29: 30: public void update() { 31: storedvolume += tsclock.gettimestep()*(inflow - getdrainagerate()); 32: if (storedvolume < 0) { 33: storedvolume = 0.0; 34: } 35: } 36: 37: public static void main(string args[]) { 38: TSClock tsclock = new TSClock(); 39: tsclock.settimestep(0.1); 40: TSTank3 tstank3 = new TSTank3(tsClock); 41: System.out.println("time,tank level"); 42: for (int i=0;i<100;i++) { 43: tstank3.setinflow(1.0); 44: System.out.println(tsClock.getTime() + "," + tstank3.gettanklevel()); 45: tsclock.update(); 46: tstank3.update(); 47: } 48: } 49: } 14

TSClock.java 1: public class TSClock { 2: private final double INITIAL_TIME = 0.0; //s 3: private double timestep; 4: private double time; 5: public TSClock() { 6: time = INITIAL_TIME; 7: } 8: public void settimestep(double timestep) { 9: this.timestep = timestep; 10: } 11: public double gettimestep() { 12: return timestep; 13: } 14: public double gettime() { 15: return time; 16: } 17: public void update() { 18: time += timestep; 19: } 20: public static void main(string args[]) { 21: TSClock tsclock = new TSClock(); 22: tsclock.settimestep(0.1); 23: for (int i=0;i<10;i++) { 24: System.out.println("Iteration = " + i + " Time = " + tsclock.gettime()); 25: tsclock.update(); 26: } 27: } 28: } 15

1.8 TSTankSystem.java main 16

TSTankSystem.java 1: public class TSTankSystem { 2: public static void main(string args[]) { 3: TSClock tsclock = new TSClock(); 4: tsclock.settimestep(0.1); 5: TSWaterSupply tswatersupply = new TSWaterSupply(); 6: TSTank1 tstank1 = new TSTank1(tsClock); 7: TSTank2 tstank2 = new TSTank2(tsClock); 8: TSTank3 tstank3 = new TSTank3(tsClock); 9: System.out.println("time,tank level 1, tank level 2, tank level3"); 10: for (int i=0; i<300; i++) { 11: tstank1.setinflow(tswatersupply.getflowrate()); 12: tstank2.setinflow(tstank1.getdrainagerate()); 13: tstank3.setinflow(tstank2.getdrainagerate()); 14: System.out.println(tsClock.getTime() + "," + tstank1.gettanklevel() 15: + "," + tstank2.gettanklevel() + "," + tstank3.gettanklevel()); 16: tsclock.update(); 17: tstank1.update(); 18: tstank2.update(); 19: tstank3.update(); 20: } 21: } 22: } 17

TSTankSystem.java java TSClock.class 4 3 18

1.9 2 Car Driver Car Driver 5 19

1.10 20

1.11 (a) 7 (b) 8 (c) 9, 18 A4 119 95 21

22