流体力学に出てくるブラジウスの解ってなんですか?

このQ&Aに関連する最新のQ&A

A 回答 (3件)

平板の周囲の境界層を解く際に、具体的で簡単な形としてブラジウス解が与えられます。


(1)定常で、平板をx座標に与えて二次元系で考えてください。
(2)x、yの独立変数を一つの独立変数zで与えます。
(3)速度場を流線関数で与えます。
色々試行錯誤ありますが、うまく変換するとf(z)の常微分方程式になるわけです。(境界条件をy=0で速度u,vがともに0、y=無限大でu=U”一様流”)
すると、

2f”+ff”=0  :f”はfの二階微分 (#) 

が解くべき常微分方程式です。(境界条件はz=0でfとf’が0、zが無限大でf’が1に変換されます)(#)式は一見すると簡単そうですが2項目が非線形項となっているので難しいです。さらに境界条件が離れた2点でとってあることも問題になります。大雑把に言えば、下のboundaryではべき級数解を与えて、上のboundaryでは漸近解を与えて両者を結合させます。べき級数解で一個の定数と漸近解を与える際に積分定数として最低2個でてくるので、最低3個の定数をうまくおいて接合解を与えます。

外場の流れをxのべき乗の形に変化させると境界層の剥離が起こるのですが、その時板の先端の角度に比例するbとべき数mには重要な関係があって、ブラジウスの解は平板(つまりb=0)なのでm=0の場合であるということが分かります。

あとは色々流体力学の本を読んでみるとよいでしょう。
    • good
    • 0

流体力学のナビエ・ストークス方程式に対して,


レイノルズ数Rが大きいとしてプラントルの境界層近似をおこない,
境界層方程式が得られます.
この境界層方程式で,速度U0の一様流に平行に置かれた薄い半無限平板が
あるときの境界層方程式の解がブラウジウスの解です.
この条件では,境界層方程式を簡単な形に変形でき,
境界近くおよび境界から離れた場所で解を求め,
両者をうまく接続してブラウジウスの解が得られます.

なお,境界層近似では,ナビエ・ストークス方程式に比べて微分方程式の階数が
1階下がっているため,境界条件に対する自由度が減ってしまいます.
そのあたりの扱いにも注意が必要です.

ここでは図は描けないし,式を書くのも(読むのも)大変です.
適当な流体力学の本を参照下さい.

ところで,burajiusu さん,
流体力学でブラウジウスの解,とわかっているのですから,
ここで質問するよりは図書館で流体力学の本を調べるべきです.
ここで私がいろいろ書くよりも
流体力学のプロが書いたわかりやすく間違いのない情報が得られるはずですよ.

なお,finetoothcomb さんがブラウジウスの公式
(第1公式(力)と第2公式(モーメント)があります)
について触れられていますが,上の話とは別の話です.
「ブラウジウスの解」と質問されていますので,
質問者の意図は多分私の話の方だと思います.
    • good
    • 0

誰も回答されていないようなので...



理化学辞典第三版によりますと、

ブラジウスの公式[Blasius' formula]
縮まない完全流体の2次元の定常渦なし流れにおいて,その中にある任意の柱状物体が流れからうける力(X,Y)と原点のまわりのモーメントMzを与える公式.

だそうです.回答になりますか?
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QC言語のソースコードの書き方

C言語のソースコードの書き方に関する質問です。
0を5個と1を4個の、合わせて9個の数字を並べて出来上がる数列のパターン(126通り)を全て羅列させるプログラムを作りたいと考えていますが、そのためにどういった方針を立ててソースコードを書けばよいかが分かりません。
どういった構造かだけでも構いませんので、教えて頂けると幸いです。
よろしくお願いします。

Aベストアンサー

という方針で書くとこんな感じね。
#include <stdio.h>

void
print_pattern(char pattern[], int size)
{
for (int i = 0; i < size; i++) {
printf("%c", pattern[i]);
}
printf("\n");
}

void
iter(char pattern[], int end, int n, int m)
{
if (n == 0 && m == 0) {
print_pattern(pattern, end);
return;
}

if (n == 0) {
pattern[end] = 'b';
iter(pattern, end + 1, n, m - 1);
return;
}
if (m == 0) {
pattern[end] = 'a';
iter(pattern, end + 1, n - 1, m);
return;
}

pattern[end] = 'b';
iter(pattern, end + 1, n, m - 1);
pattern[end] = 'a';
iter(pattern, end + 1, n - 1, m);
}

int
main(void)
{
int m = 5, n = 4;
char pattern[m + n];
iter(pattern, 0, m, n);
return 0;
}

という方針で書くとこんな感じね。
#include <stdio.h>

void
print_pattern(char pattern[], int size)
{
for (int i = 0; i < size; i++) {
printf("%c", pattern[i]);
}
printf("\n");
}

void
iter(char pattern[], int end, int n, int m)
{
if (n == 0 && m == 0) {
print_pattern(pattern, end);
return;
}

if (n == 0) {
pattern[end] = 'b';
iter(pattern, end + 1,...続きを読む

Q流体力学に関して質問です。流体力学に関して勉強を始めた者です。

流体力学に関して質問です。流体力学に関して勉強を始めた者です。

非粘性流体の非定常流に対するエネルギー方程式(エネルギー保存則)を書け。
流線に沿って座標s軸を取るものとする。その他の物理量は各自定義せよ。

という問題です。

解ける方はおられるでしょうか??
参考にさせていただきたいと思いますのでよろしくお願いいたします。

Aベストアンサー

なにやらテスト対策のようです。
答えは、ナビエ=ストークス方程式を中間積分したものになるでしょう。


しかし、問題は正しいですか? 初学者相手の問題とは思えません。最初は、非粘性・定常流・非圧縮・渦なしを扱います。問題の意図としては、ベルヌーイの定理が理解できているか、となるんでしょうけど。。。

QC言語のソースコードについて教えてください。

以下のソースコードを学習用C言語開発環境で行ったのですが、
『ファイル「C:/Users/ユーザー名/AppData/Local/EasyIDEC/project/タイトル/main.c」の
「41行目」で記述エラーを発見しました。
「,」を付け忘れています。』

という、コンパイルエラーが表示されました。
何度も見直したのですが、よくわかりません。

#include <stdio.h>

int main(int argc, char *argv[])
{
char answer ;
answer = 'n' ;

while(answer =='n')
{
int input ;
input = 0 ;
int add ;
add = 1 ;
int sum ;
sum = 0 ;

printf("数値を入力して下さい。:") ;
scanf("%d", &input ) ;

int i ;
i = 0 ;

while(i < input)
{
sum =sum + add ;
printf("\n%d",sum) ;
i++ ;
add++ ;
}

printf("\n1から%dまでの総和は、%dです。" , input , sum) ;

while(1)
{

printf("\n終了しますか? y/n:") ;
scanf(" %c , &answer) ;

if( (answer != 'y') && (answer != 'n') )
{
printf( "y or nを入れてください。") ;
}
else
{
break ;
}
}
}
return 0 ;
}

以下のソースコードを学習用C言語開発環境で行ったのですが、
『ファイル「C:/Users/ユーザー名/AppData/Local/EasyIDEC/project/タイトル/main.c」の
「41行目」で記述エラーを発見しました。
「,」を付け忘れています。』

という、コンパイルエラーが表示されました。
何度も見直したのですが、よくわかりません。

#include <stdio.h>

int main(int argc, char *argv[])
{
char answer ;
answer = 'n' ;

while(answer =='n')
{
int input ;
input = 0 ;
int add ;
add = 1 ;
int sum ;
sum = 0 ;

printf("...続きを読む

Aベストアンサー

>>おかげで、エラー表記されずに、プログラムが実行されました。

これはコンパイルがうまく完了したってことでしょうか?できあがったプログラムが実行できたってことではないですよね?そうなら

>>’タイトル’は内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」

なんて問題は起きないはすですからね。

できあがったファイルは、XXXX.EXEのように拡張子のEXEがついていますか?もしXXXX.OBJであれば、リンクができていませんから、実行できません。

学習用C言語開発環境の使い方を確認してみてください。

P.S.
昔は、コンパイラを使うのは大変でしたが、今は楽ですね。CではなくPascal系コンパイラーですが、カセットテープに入っていて、コンパイラの読込にテープレコーダで15分かかったりとか、まあ大変だけど面白い時代でした。

Q流体力学に出てくる速度三角形の向きがわかりません

某高専の学生なんですが、二日後に流体力学のテストがあります。
ターボ機械についてのテストなんですが、勉強していていまいちわからないところがありました。

遠心羽根車、軸流ファン、自動車用ターボチャージャ等の絶対速度、周方向速度、相対速度を導かないといけないのですが、速度三角形を描くときに矢印がどちらを向くのかわからなくて困っています。
計算によって数字を求めることはできるんですが、ベクトルの向きがいまいちわからないので、速度三角形を描くことができません。

周方向速度の向きだけは図を見たらわかります。
ですが、流れに旋回がある場合、ない場合、どちらも周方向速度の向き以外わかりません。

なにか、向きを簡単に調べる方法はないでしょうか?
考え方等教えていただけたらと思います。

ちなみに、使っているテキストは「ターボ機械-入門編- 日本工業出版」です。

テストが近いのに、担当の先生が多忙でつかまらないことが多いので質問させていただきました。
お答えいただけると嬉しく思います。

Aベストアンサー

矢印の向きですか・・・
向きは直感的にあきらかなような気がしますが・・・
向きがわからずに計算ができるというのがいまいち理解できませんが・・・

http://ibis.mach.me.ynu.ac.jp/matsui/Lecture/FD1/sec3/3-4.html
とか
http://tblade.blog.ocn.ne.jp/blog/2008/08/post_c21c.html
なのを見てもわかりませんかね・・・

QC言語ソースコードに関する質問です。

以下の数列について,初項から第15項までを求めるプログラムと実行結果を示せ。
0 1 1 2 3 5 8 13 21(ただし,初項=0,第1項=1とする。)

ソースコードを書くと、エラーがでた。
#include <stdio.h>
int fib(int n)
{
if(n==1 || n==2)
return 1;
else
return fib(n-1)+fib(n-2);
}
int main(void)
{
int n;
for(n=0;n<17;n++)
printf("%d,",fib(n));
}

正しソースコードを教えてください!

よろしくお願いします。

Aベストアンサー

#include <stdio.h>

void fib(int i, int j, int n)
{
if (n == 1)
{
printf("%d\n", i);
}
else
{
printf("%d\n", i);
return fib(j, i + j, n - 1);
}
}

int main(void)
{
fib(0, 1, 15);

return 0;
}

Q流体力学の公式証明が解らない

流体力学の中で証明の課題が出たのですが、全然解りません。初心者向けに教えてください。

ポテンシャル流
非圧縮流体、粘性無し、渦無し、一様流
球対称な流れの場合
rのみの関数の場合(r=x.y.z)
Φ=Φ(r.θ.ρ)=Φ(r)のとき

ΔΦ= 1/r2 ・ d/dr(r2・dΦ/dr)

2の数字は2乗です。  

となることを証明せよというものです。
ベクトル解析を良く理解していないので、困っています。

Aベストアンサー

r=√(x^2+y^2+z^2)より、

∂/∂x = (∂r/∂x) d/dr = (x/r)d/dr
∂/∂y = (∂r/∂y) d/dr = (y/r)d/dr
∂/∂z = (∂r/∂z) d/dr = (z/r)d/dr

(※Φがrのみの関数であることを考慮して、θ、φ成分は無視しました。)

これより、

∂^2/∂x^2 = (x/r)d/dr{(x/r)d/dr}
      = (x/r){(1/x-x/r^2)d/dr+(x/r)d^2/dr^2}
      = (1/r)(1-x^2/r^2)d/dr+(x^2/r^2)d^2/dr^2

同様に、
∂^2/∂y^2 =(1/r)(1-y^2/r^2)d/dr+(y^2/r^2)d^2/dr^2
∂^2/∂z^2 =(1/r)(1-z^2/r^2)d/dr+(z^2/r^2)d^2/dr^2

となります。
よって、

Δ = ∂^2/∂x^2+∂^2/∂y^2+∂^2/∂y^2
 = (1/r)(3-r^2/r^2)d/dr+(r^2/r^2)d^2/dr^2
 = (2/r)d/dr+d^2/dr^2
 = (1/r^2)d/dr(r^2・d/dr)


よって、

ΔΦ = (1/r^2)d/dr(r^2・dΦ/dr)

が成り立ちます。

r=√(x^2+y^2+z^2)より、

∂/∂x = (∂r/∂x) d/dr = (x/r)d/dr
∂/∂y = (∂r/∂y) d/dr = (y/r)d/dr
∂/∂z = (∂r/∂z) d/dr = (z/r)d/dr

(※Φがrのみの関数であることを考慮して、θ、φ成分は無視しました。)

これより、

∂^2/∂x^2 = (x/r)d/dr{(x/r)d/dr}
      = (x/r){(1/x-x/r^2)d/dr+(x/r)d^2/dr^2}
      = (1/r)(1-x^2/r^2)d/dr+(x^2/r^2)d^2/dr^2

同様に、
∂^2/∂y^2 =(1/r)(1-y^2/r^2)d/dr+(y^2/r^2)d^2/dr^2
∂^2/∂z^2 =(1/r)(1-z^2/r^2)d/dr+(z^2/r^2)d^2/dr^2

となります。
...続きを読む

Qc言語のソースコードを教えて下さい

キーボードから10個の正整数値を読み込み,合計値を表示するプログラムを作りなさい。
ただし,キーボードから読み込んだ値はint型変数xにしまわれるものとし,変数はこのxと回数を数えるint型変数countと合計値をしまうint型変数sumのみを用いることとする。

このプログラムのソースコードを教えて下さい。
解説もよろしくお願いします。

Aベストアンサー

一例です。
添付のURLを参照して下さい。
因みに、平均値も算出しているが気にせずに、後はご自身で変数、コードを要調整して下さい。

参考URL:http://www.geocities.jp/kenji_y0328/crenshu/renshu/r021.gif

Q流体力学の問題を鏡像法を使って解く。

yz面が壁であって流体はx>0にあるとする。点(a,0,0)に湧き出し口があるときの流れを求めよ。

ただし、縮まない流体の渦なし流として、
速度場は速度ポテンシャルを使ってv=▽Φ(vはベクトル)
Φはラプラス方程式▽^2Φ=0に従う
とする。

という問題で、鏡像法を使うらしいのですが・・・。
点(-a,0,0)にも同じ湧き出し口をおくと、yz面上でv_x=0となることを利用すればよいというのですが、
v_x=0という境界条件がどこから出てくるのかがわかりません。(a,0,0)の湧き出し口から流体が壁にぶつかって跳ね返ってきて・・・という気がするのですが、v_xが境界面で0となることが厳密に理解できなくて困っています。

Aベストアンサー

境界面では、壁にぶつかる流れと、壁から跳ね返ってくる流れが打ち消し合って、
トータルで速度のx成分はゼロになる、
という考えでは駄目でしょうか?


あるいは、境界面に接した微小な立方体を考えます。
立方体に流入(流出)する流れを考えるとき、
立方体は壁に接しているので、壁側の側面からは、
流れが入ってこれないし、出て行くことも出来ません。

つまり、立方体の壁側の側面では、速度成分が0ということになります。

境界面では、いたるところで上の考えが成り立つので、
v_xが境界面で0となることが言えると思います。


どうでしょうか?

Qソースコードの間違い (C言語)

変数に、文字列を入れた配列の文字列の最後の要素数を入れたいのですが(つまり'\0')、うまくいきません。いつも2個多い値になってしまいます。

#include <stdio.h>

void main() {
char moji[100]={0};
int c=0;

fgets(moji,sizeof moji,stdin);

while( moji[c] != '\0' ) ++c;

printf("\n%d\n",c); //
}

例えば5文字の1ビット文字を入れると、最後の文字はmoji[4]にあるのでprintfで4と表示されるはずじゃないですか。でも6になるんです。いつも+2の値になるんですよ。どうやらfgetsを使っているからそうなるらしく、scanfを使うと結果は1多い値に、普通に配列に直接文字列を代入すると正常な結果になります。別にcに-2してもいいのですが、それはなんだか癪といいますか・・・。なぜこういうことがおきるのでしょうか?回答よろしくお願いします。

Aベストアンサー

>なぜこういうことがおきるのでしょうか
そのmoji[]の余計な部分にはどんなコードが入っているかは確認していますか?
リターンキーも「キー入力」の一つですよ。

Q流体力学:どこまでが流体か?

流体でせん断応力(摩擦力)はせん断速度のみに依存する。
固体(ゴムを含む)なら摩擦力は垂直効力のみに依存する。

じゃあ、その間はないのでしょうか?

水とかとろとろの流体なら摩擦力はせん断速度に比例するだろうし
ゴムみたいな流動性が無視できるものなら摩擦力は垂直効力に比例するとおもいます。

じゃあ、水とき片栗粉とか高分子みたいなどろどろの液体ならその間の性質をもっててもいいと思うんですが、どうなのでしょう???

ご存じの方がいたら教えていただけたら幸いです。

Aベストアンサー

当然ありますよ。レオロジーという分野がその辺を扱っています。


人気Q&Aランキング

おすすめ情報