12.2 電気回路網に関するキルヒホッフの法則による解法 2 多元連立 1 次方程式の工学的応用についての例を 2 つ示す.1 つはブリッジ T 型回路, もう 1 つはホーイストンブリッジ回路である. 示された回路図と与えられた回路定数からキルヒホッフの法則を使って多元連立 1 次方程式を導出する

Similar documents
数値計算法

Microsoft Word - 2_0421

C 言語第 6 回 1 数値シミュレーション :2 階の微分方程式 ( シラバス10 11 回目 ) 1 2 階の微分方程式と差分方程式微分方程式を 2 d x dx + c = f ( x, t) 2 dt dt とする これを 2 つの 1 階の微分方程式に変更する ìdx = y 2 2 d

ÿþŸb8bn0irt

プログラミング基礎

スライド 1

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

スライド 1


/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v

PowerPoint Presentation

練習&演習問題

Taro-ファイル処理(公開版).jtd

[1] #include<stdio.h> main() { printf("hello, world."); return 0; } (G1) int long int float ± ±

Microsoft PowerPoint - 第3回目.ppt [互換モード]

double float

cm H.11.3 P

Microsoft PowerPoint - kougi4.ppt

画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう

6 6.1 sound_wav_files flu00.wav.wav 44.1 khz 1/44100 spwave Text with Time spwave t T = N t N 44.1 khz t = 1 sec j t f j {f 0, f 1, f 2,, f N 1

Microsoft PowerPoint - MEpractice10.ppt [互換モード]

関数の呼び出し ( 選択ソート ) 選択ソートのプログラム (findminvalue, findandreplace ができているとする ) #include <stdio.h> #define InFile "data.txt" #define OutFile "sorted.txt" #def

第1章 様々な運動

情報処理演習 B8クラス

Microsoft PowerPoint - 14th.ppt [互換モード]

2. コンデンサー 極板面積 S m 2, 極板間隔 d m で, 極板間の誘電率が ε F/m の平行板コンデンサー 容量 C F は C = ( )(23) 容量 C のコンデンサーの極板間に電圧をかけたとき 蓄えられる電荷 Q C Q = ( )(24) 蓄えられる静電エネルギー U J U

スライド 1

C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. このサンプルページの内容は, 新装版 1 刷発行時のものです.

gengo1-12

関数の呼び出し ( 選択ソート ) 選択ソートのプログラム (findminvalue, findandreplace ができているとする ) #include <stdiu.h> #define InFile "data.txt" #define OutFile "surted.txt" #def

p = 1, 2, cos 2n + p)πj = cos 2nπj 2n + p)πj, sin = sin 2nπj 7.1) f j = a ) 0 + a p + a n+p cos 2nπj p=1 p=0 1 + ) b n+p p=0 sin 2nπj 1 2 a 0 +

高校電磁気学 ~ 電磁誘導編 ~ 問題演習

スライド 1

gengo1-12

RLC 共振回路 概要 RLC 回路は, ラジオや通信工学, 発信器などに広く使われる. この回路の目的は, 特定の周波数のときに大きな電流を得ることである. 使い方には, 周波数を設定し外へ発する, 外部からの周波数に合わせて同調する, がある. このように, 周波数を扱うことから, 交流を考える

slide5.pptx

gengo1-12

£Ã¥×¥í¥°¥é¥ß¥ó¥°ÆþÌç (2018) - Â裵²ó ¨¡ À©¸æ¹½Â¤¡§¾ò·ïʬ´ô ¨¡

Microsoft Word - 実験2_p1-12キルヒホッフ(第17-2版)P1-12.doc

ÿþŸb8bn0irt

kiso2-09.key

Microsoft Word - 1.抗がん剤治療を受けられるかたへ(最新版).doc

超初心者用

スライド 1

8 / 0 1 i++ i 1 i-- i C !!! C 2

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() 2 double *a[ ]; double 1 malloc() dou

Microsoft Word - Cプログラミング演習(10)

1 return main() { main main C 1 戻り値の型 関数名 引数 関数ブロックをあらわす中括弧 main() 関数の定義 int main(void){ printf("hello World!!\n"); return 0; 戻り値 1: main() 2.2 C main

2017 p vs. TDGL 4 Metropolis Monte Carlo equation of continuity s( r, t) t + J( r, t) = 0 (79) J s flux (67) J (79) J( r, t) = k δf δs s( r,

トランジスタ回路の解析 ( 直流電源 + 交流電源 ) 交流回路 ( 小 ) 信号 直流回路 ( バイアス計算 ) 動作点 ( 増幅度の計算 ) 直流等価回路 ダイオードモデル (pnp/npn) 交流 ( 小信号 ) 等価回路 T 形等価回路 トランジスタには直流等価回路と交流等価回路がある

SuperH RISC engine C/C++ コンパイラ Ver.7 不具合内容 - 過去のお知らせ SuperH RISC engine C/C++ コンパイラ Ver.7 台における不具合内容を以下に示します のチェックツールをルネサスエレクトロニクス株式会社のホームページ

Microsoft Word - Training10_プリプロセッサ.docx

2014計算機実験1_1

はしがき 三宅唯すべてオリジナルで私が作成した. あえて, 内部抵抗のある電池のパフォーマンス問題, ホイートストンブリッジ回路, 非直線抵抗の特性曲線問題 などの頻出題材を避けた. その手のパターン化学習では得られない, 電気回路の理解を目的としているからだ. 細心の注意をはらい, 設問の考察を通

Microsoft PowerPoint - kougi2.ppt

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() malloc 2 #include <stdio.h> #include

フィードバック ~ 様々な電子回路の性質 ~ 実験 (1) 目的実験 (1) では 非反転増幅器の増幅率や位相差が 回路を構成する抵抗値や入力信号の周波数によってどのように変わるのかを調べる 実験方法 図 1 のような自由振動回路を組み オペアンプの + 入力端子を接地したときの出力電圧 が 0 と

memo

program.dvi

ファイル入出力

Microsoft PowerPoint - 12.ppt [互換モード]

関数 C 言語は関数の言語 関数とは 関数の定義 : f(x) = x * x ; 使うときは : y = f(x) 戻り値 引数

If(A) Vx(V) 1 最小 2 乗法で実験式のパラメータが導出できる測定で得られたデータをよく近似する式を実験式という. その利点は (M1) 多量のデータの特徴を一つの式で簡潔に表現できること. また (M2) y = f ( x ) の関係から, 任意の x のときの y が求まるので,

FORTRAN( と C) によるプログラミング 5 ファイル入出力 ここではファイルからデータを読みこんだり ファイルにデータを書き出したりするプログラムを作成してみます はじめに テキスト形式で書かれたデータファイルに書かれているデータを読みこんで配列に代入し 標準出力に書き出すプログラムを作り

ギリシャ文字の読み方を教えてください

( 全体 ) 年 1 月 8 日,2017/1/8 戸田昭彦 ( 参考 1G) 温度計の種類 1 次温度計 : 熱力学温度そのものの測定が可能な温度計 どれも熱エネルギー k B T を

Microsoft PowerPoint - kougi7.ppt

Microsoft PowerPoint pptx

演算増幅器

PowerPoint Presentation

微分方程式 モデリングとシミュレーション

Microsoft Word - no15.docx

Microsoft Word - C.....u.K...doc

Microsoft PowerPoint - prog06.ppt

Microsoft PowerPoint EM2_15.ppt

Program Design (プログラム設計)

PowerPoint Presentation

9 8 7 (x-1.0)*(x-1.0) *(x-1.0) (a) f(a) (b) f(a) Figure 1: f(a) a =1.0 (1) a 1.0 f(1.0)

PowerPoint プレゼンテーション - 物理学情報処理演習

Taro-再帰関数Ⅲ(公開版).jtd

ÿþŸb8bn0irt

ファイル入出力

C言語によるアルゴリズムとデータ構造

untitled

Microsoft PowerPoint - adi05.ppt [互換モード]

第2回講義:まとめ

Microsoft PowerPoint - kougi9.ppt

Microsoft Word - Cプログラミング演習(9)

例 e 指数関数的に減衰する信号を h( a < + a a すると, それらのラプラス変換は, H ( ) { e } e インパルス応答が h( a < ( ただし a >, U( ) { } となるシステムにステップ信号 ( y( のラプラス変換 Y () は, Y ( ) H ( ) X (

プログラミングI第10回

Microsoft Word - 【第5分科会】ConcolicTestingグループ_付録_修正_ doc

Microsoft PowerPoint - 10.ppt [互換モード]

卒 業 研 究 報 告.PDF

I 2 tutimura/ I 2 p.1/??

PowerPoint プレゼンテーション - 物理学情報処理演習

Taro-最大値探索法の開発(公開版

C C UNIX C ( ) 4 1 HTML 1

計算機シミュレーション

joho09.ppt

Transcription:

12.2 電気回路網に関するキルヒホッフの法則による解法 2 多元連立 1 次方程式の工学的応用についての例を 2 つ示す.1 つはブリッジ T 型回路, もう 1 つはホーイストンブリッジ回路である. 示された回路図と与えられた回路定数からキルヒホッフの法則を使って多元連立 1 次方程式を導出する. その式のパラメータを前述のプログラムに反映させてシミュレーションを行う. 12.2.0 キルヒホッフの法則 電気回路網において, 回路のある点に流れる電流, 素子にかかる電圧や抵抗値 ( インピ ーダンス ) はキルヒホッフの法則を使って求めることができる. 法則は 2 つある. 第 1 法則 : 回路の分岐点において, 流入する電流は流出する電流に等しい I 1 I 3 I 1 + I 2 = I 3 + I 4 (1) I 2 I 4 第 2 法則 : 閉回路において, 起電力の和は電圧降下の和に等しい 閉回路 abca の起電力の和と電圧降下の和は次のとおり. R 1 E 1 R 3 - + 起電力の和 : E 1 + ( - E 2 ) a I 1 b I 3 c 電圧降下の和 :R 1I 1 + R 3I 3 + R 2( - I 2 ) + I 2 つまり R 2 E 2 E 1 + ( - E 2 ) = R 1I 1 + R 3I 3 + R 2( - I 2 ) (2) ただし電流の向きを破線の矢印方向としている.2 つの法則から得た式を連立して回路の解 析を行う.

12.2.1 ブリッジ T 型回路この回路は減衰器として使用される. 減衰器は強い強度を持つ電気信号 ( オーディオや無線の信号など ) を適切な大きさに弱める装置である. 例えば TV の電波が強い地域では正常に信号を受信できない. そのようなところでは信号の強度を減衰器で弱めて受信することになる. またこの回路はインピーダンスのマッチングにも使用される. 下の図において,RL は可変抵抗器である. これを調節することにより, 電流 I1,I2 を小さく ( 減衰 ) することができる.I1,I2 および I3 の向きを図の矢印の向きとする. また電圧 E=10V, 抵抗 R1=20Ω,R2=50Ω,R3=30Ω,R4=15Ω とする. 抵抗 RL を 5Ω 刻みで 0 から 100Ω 変化させたとき,I1,I2 および RL の端子電圧 VL がどのように変化するのか, それらを計算で求め, 減衰器の機能を確認する. Fig. 1. ブリッジ T 型回路. キルヒホッフの法則から, 次の連立方程式が得られる.( 式は上から順に I1,I2 および I3 の向きについての起電力の和となっている.) (R1 + R2)I1 R1 I2 R2 I3 = E { R1 I1 + (R1 + R3 + R4)I2 R3 I3 = 0 R2 I1 R3 I2 + (R2 + R3 + RL)I3 = 0 VL=I3 RL である.

/* Gauss elimination method */ /* 2012/10/05 */ //make procedure: gcc 12_2_1_GEM.c -o 12_2_1_GEM -lm #include <stdio.h> #include <math.h> #define NUMBER_OF_DATA 3 /* Number of undetermined coefficient:3 元連立方程式なので3*/ #define NUNBER_OF_CF 11 /* Number of coefficient term */ #define TURN 20 /* 繰り返しの回数 (0,5,,100Ω) */ #define R1 20 /*R1の抵抗値 (Ω)*/ #define R2 50 /* R2の抵抗値 (Ω)*/ #define R3 30 /* R3の抵抗値 (Ω)*/ #define R4 15 /* R4の抵抗値 (Ω)*/ #define E 10 /* 電池の起電力 (V) */ double RL=0; double data[nunber_of_cf][nunber_of_cf+1]; int GEM(); /* Definition of GEM */ void show_procedure(); /* Definition of show_procedure */ int n = (int)number_of_data; int turn=(int)turn; double epsilon=1e-18; /* Minimum value of pivot */ double x[nunber_of_cf]; /* Solutions will set: x1, x2,..., xn */ double RLandIandVL[TURN][NUMBER_OF_DATA+2]; /* RL, I1, I2, I3, VL are set */ void FileOut() // *** データをファイルへ出力する関数 *** { FILE *fp; // ファイルポインタの宣言 int count; // カウンタ char FILENAME[30]; // FILENAME; ファイル名が入る変数 strcpy(filename,"data.txt"); // ファイル名を決定する fp=fopen(filename,"w"); // ファイルを開く if(fp==null){ printf("error, A file can't open!\n"); // ファイルが生成できなければエラーの表示をする for(count=1; count<=turn; count++){ // データのファイルへの出力 fprintf(fp,"%d %f %f %f %f %f\n",count, RLandIandVL[count][0], RLandIandVL[count][1], RLandIandVL[count][2], RLandIandVL[count][3], RLandIandVL[count][4]); //RLandIandVL[][0]:RL, R L[][1]:I1, R L[][2]: I2, R L[][3]: I3, R L[][4]: VLがセットされる fclose(fp); // ファイルを閉じる int main() { int count, i; int n=(int)number_of_data; /* Number of undetermined coefficient */ int pivot; /* */ for(count=1; count<=turn; count++) {//data[][] には3 元連立 1 次方程式の成分,RとEがセットされる data[0][0] = R1+R2; data[0][1] = -R1; data[0][2] = -R2; data[0][3] = E; /* a11,..., a1n, b1 */ data[1][0] =-R1; data[1][1] = R1+R3+R4; data[1][2]= -R3; data[1][3] = 0; /* a21,..., a2n, b2 */ data[2][0] =-R2; data[2][1]=-r3; data[2][2] = R2+R3+RL; data[2][3] = 0; /* an1,..., ann, bn */ pivot = GEM(); if(pivot == 1) printf("tunr %d, RL=%f, I1=%f, I2=%f, I3=%f, VL=%f\n", count, RL, x[0], x[1], x[2], (x[2]*rl)); else { printf("this process was stopped, because a pivot is to small.\n"); RLandIandVL[count][0]=RL;RLandIandVL[count][1]=x[0]; RLandIandVL[count][2]=x[1]; RLandIandVL[count][3]=x[2]; RLandIandVL[count][4]=(x[2]*RL); RL += 5; FileOut(); i=getchar(); return 0;

I1, I2(A) ( 10) VL(V) GEM のコードについては項目 12.1 を参照のこと. 実行結果 プログラムを実行すると, ファイル data.txt が生成される. このデータファイルから Microsoft EXEL,Sma4 for Windows( フリー ) や GNU PLOT( フリー ) などを使って グラフが作成できる. 下はその例である. 1 I1 I2 VL 0.5 0 0 20 40 60 80 RL(Ω) Fig. 2. I1, I2 and VL vs. RL. RL が増加すると,I1 と I2 が減衰している. ブリッジ T 型回路は減衰器であることが確認 できる.

12.2.2 ホイートストンブリッジ回路この回路は未知の抵抗 ( あるいはインピーダンス ) を精密に測定するために使用される. 例えば歪ゲージの測定で使用されている.( この測定では材料の歪や応力が分かる.) また微小な電位差の検出や様々な電気量を測定するために多く使用されている. 下の回路において,I0 が流れないとき, ブリッジがバランスしているという. 今, 電流 I1 および I2 の向きを図の矢印の向きとし, 電圧 E = 10V, 抵抗 R1 = 5Ω,R3 = 4Ω,R4 = 6Ω,R0 = 0.5Ω とする. 抵抗 R2 を 0.5Ω 刻みで 0 から 10Ω 変化させたとき, 検流計 G に流れる電流 I0 がどのように変化するのか, それらを計算で求め, ホイートストンブリッジの機能を確認する. Fig. 3. ホーイストンブリッジ回路. キルヒホッフの法則から, 次の連立方程式が得られる.( 式は上から順に I1,I2,I3 の向き についての起電力の和となっている.) (R1 + R2 + R0)I1 R0 I2 R2 I3 = 0 { R0 I1 + (R3 + R4 + R0)I2 R4 I3 = 0 R2 I1 R4 I2 + (R2 + R4)I3 = E I0 は I0 = I1 - I2 である. これらの関係から未知の抵抗 R2 を求める.

/* Gauss elimination method */ /* 2012/10/05 */ // make procedure: gcc 12_2_2_GEM.c -o 12_2_2_GEM -lm #include <stdio.h> #include <math.h> #define NUMBER_OF_DATA 3 /* Number of undetermined coefficient */ #define NUNBER_OF_CF 11 /* Number of coefficient term */ #define TURN 20 /* Turn of iteration */ #define R0 0.5 /* resistance value */ #define R1 5 /* resistance value */ #define R3 4 /* resistance value */ #define R4 6 /* resistance value */ #define E 10 /* voltage value */ double R2=0; double data[nunber_of_cf][nunber_of_cf+1]; int GEM(); /* Definition of GEM */ void show_procedure(); /* Definition of show_procedure */ int n = (int)number_of_data; int turn=(int)turn; double epsilon=1e-18; /* Minimum value of pivot */ double x[nunber_of_cf]; /* Solutions will set: x1, x2,..., xn */ double RLandIandVL[TURN][NUMBER_OF_DATA+2]; /* RL, I1, I2, I3, VL are set */ void FileOut() // *** dataのファイル出力 *** { FILE *fp; // ファイルポインタの宣言 int count; // カウンタ char FILENAME[30]; // FILENAME; ファイル名が入る変数 strcpy(filename,"data.txt"); // ファイル名を決定する fp=fopen(filename,"w"); // ファイルを開く if(fp==null){ printf("error, A file can't open!\n"); // ファイルが生成できなければエラーの表示をする for(count=1; count<=turn; count++){ // 行に沿った ( 原子位置に対する ) 種々のデータの出力 fprintf(fp,"%d %f %f %f %f %f\n",count, RLandIandVL[count][0], RLandIandVL[count][1], RLandIandVL[count][2], RLandIandVL[count][3], RLandIandVL[count][4]); fclose(fp); // ファイルを閉じる int main() { int count, i; int n=(int)number_of_data; /* Number of undetermined coefficient */ int pivot; /* */ for(count=1; count<=turn+1; count++) { data[0][0] = R1+R2+R0; data[0][1] = -R0; data[0][2] = -R2; data[0][3] = 0; /* a11, a12,..., a1n, b1 */ data[1][0] = -R0; data[1][1] = R3+R4+R0; data[1][2] = -R4; data[1][3] = 0; /* a21, a22,..., a2n, b2 */ data[2][0] = -R2; data[2][1] = -R4; data[2][2] = R2+R4; data[2][3] = E; /* an1, an2,..., ann, bn */ pivot = GEM(); if(pivot == 1) printf("tunr %d, R2=%f, I1=%f, I2=%f, I3=%f, I0=%f\n", count, R2, x[0], x[1], x[2], (x[0]-x[1])); else { printf("this process was stopped, because a pivot is to small.\n"); RLandIandVL[count][0]= R2; RLandIandVL[count][1]= x[0]; RLandIandVL[count][2]=x[1]; RLandIandVL[count][3]=x[2]; RLandIandVL[count][4]=(x[0]-x[1]); R2 += 0.5; FileOut(); i=getchar(); return 0;

I0, I1, I2, I3(A) GEM のコードについては項目 12.1 を参照のこと. 実行結果 R2 が増加すると,I0 が次第に減衰し,turn16 のとき I0=0 になる. ブリッジ回路がバラン スする状況が確認できる. 6 4 2 I0 I1 I2 I3 0-2 0 2 4 6 8 R2(Ω) Fig. 4. I0, I1, I2, I3 vs. R2.

レポート 12 バネ 質量系におけるつり合いの位置 おもり下の図において, 錘 M1,M2 がバネ定数 k1,k2,k3 のバネにつながり, 力 P で引かれて いる状態で釣り合っている. バネは k2=1.7k1,k3=3.2k1 の関係があり, また,M1 に重力加 速度を掛けたものを W1,M2 に対するそれを W2 とすると,W2=1.5W1,P=2.7W1 の関係が ある.P を 0.5W1 刻みで 0 から 5W1 の範囲で変化させた時の M1 と M2 の変位 U1 と U2 を 求めよ. U1 P U2 Fig. 5. バネ 質量系のつり合い. M1 と M2 についての運動方程式は次のとおり. k 2 U 1 = k 3 (U 2 U 1 ) + W 1 2k 1 U 2 + k 3 (U 2 U 1 ) = W 2 + P これらから, 次の連立方程式が得られる. (k { 2 + k 3 )U 1 k 3 U 2 = W 1 k 3 U 1 + (2k 1 + k 3 )U 2 = P + W 2 この 2 元連立 1 次方程式を U1 および U2 について求めよ. 出力結果 ( となるべくグラフも ) 添付する. 文献 佐藤次男ほか,C による理工学問題の解法, 日刊工業新聞社,ISBN4-526-0363203.