アプリ版:「スタンプのみでお礼する」機能のリリースについて

面光源発光の受光面での照度分布の計算方法を教えてください。

例えば、正方形の面光源から距離R離れたところにある、光源と平行に設置してある平面受光面での照度分布の計算方法とシュミレーション方法をご存知の方がいらっしゃったら教えていただけないでしょうか?
よろしくお願いします。

A 回答 (5件)

【輝度が一定でない矩形光源での照度分布】


ANo.3 は、光源の輝度が放射角θに依存しない場合ですが、その場合の光源の光度 I (cd) は
   I(θ) = { Φ/( π*a*b ) }*cos(θ) --- (1)
で表されます(Φは全光束、a は面光源の横幅、b は面光源の高さ、θ は放射角)。一般に、n を実数として
   I(θ) = { (n+1)*Φ/( 2*π*a*b ) }*cos(θ)^n --- (2)
としたほうが実際の光源の光度分布に近くなります。式(1)も式(2)も、光源から放射される全光束はΦ (lm) ですが、正面光度 I(0) は n が大きいほど大きくなり、光度が半分になる角度が小さく(指向性が鋭く)なます。式(2)の光源の場合、光源から R 離れた点(x0, y0) での照度は
   照度(lx) = ( n + 1 )*Φ*R^( n + 1 )/( 2*π*a*b )*∫[ x = -a/2 ~ a/2] ∫[ y = -b/2 ~ b/2] 1/{ ( x - x0 )^2 + ( y - y0 )^2 + R^2 }^{ ( n + 3 )/2 } dx dy
で、数値積分は次のようになります。
  照度(lx) = ( n + 1 )*Φ*R^( n + 1 )/( 2*π*M*N )*Σ [ i = 1 ~M] Σ [ j = 1 ~N ] 1/[ { -a/2 + (a/M)*i - x0 }^2 + { -b/2 + (b/N)*j - y0 }^2 + R^2 }^{ ( n + 3 )/2 } ]

x0 = y0 = 0 での照度(正面照度)は、R << a かつ R<<b のとき(光源に極めて近いところでは)
  正面照度 (lx) ≒ Φ/( a*b )
になります。また a = b = R = 1 での正面照度は、n が偶数のときは厳密に解けます。n = 0, 1, 2, 3, 4 のときの正面照度(lx)は
  n = 0 のとき ( 2*Φ/π )*arctan{ (√6 )/12 } = 0.1281884337*Φ
  n = 1 のとき 0.2394564704*Φ
  n = 2 のとき ( 2*Φ )/( 15*π )*[ 2*√6 + 15*arctan{ (√6 )/12 } ] = 0.3361075806*Φ
  n = 3 のとき 0.4201216948*Φ
  n = 4 のとき ( 2*Φ )/( 675*π )*[ 158*√6 + 675*arctan{ (√6 )/12 } ] = 0.4932020473*Φ
になるので、数値積分の精度確認に使えます。
    • good
    • 0

【ユーザ関数の作り方】


ANo.3の添付図は Excel VBA のユーザ関数 E( M, N , F, a , b , R , x , y ) で計算したものです。M は光源の横方向の分割数、N は光源の縦方向の分割数、F は光源の全光束(lm)、a は光源の横幅 (m)、b は光源の縦長さ (m)、R は光源までの距離 (m)、( x , y)は照度計算の位置 (m) です。以下の手順で VBAコード(マクロ)を作成して、ワークシートに =E( M, N , F, a , b , R , x , y ) と書くと照度の値が計算されます。

【 VBAコードの作成方法】
(1) Excelワークシートを新規に作成し、ALTキーを押しながら F8 キーを押す
(2) マクロ名の欄に E と書いて「作成」をクリック
(3) Visual Basicの編集画面の Sub E() と End Sub を削除して(全部空白画面にして)、回答No.3のVBAコードを貼り付ける( Sub Function E・・から End Function までの文章を コピー&ペースト すれば良い)
(4) 編集画面を閉じる(ALT+Q)

【マクロの実行方法】
M, N , F, a , b , R , x , y をセルの(相対)位置や数値として、ワークシートのセルに=E( M, N , F, a , b , R , x , y ) と書く。=E の前にスペースが入ると計算式でなく文字式として認識されてしまうので注意してください。添付図の例のように、セル C8 に
=E($E$2,$E$3,$C$5,$C$2,$C$3,$C$4,C$7,$B8)
と書いて、そのセルを他の全てのセルにそのままコピーすれば、引数を書き直さなくても済みます

【マクロの内容の変更方法】
(1) ALTキーを押しながら F8 キーを押す
(2) マクロ名の欄にマクロ名(e)を書いて「編集」をクリックし、内容を変更する
(3) 編集画面を閉じる(ALT+Q)

【セキュリティレベルの変更】
マクロを含むExcelファイルを開くとき、セキュリティレベルによってはマクロが実行できない場合があります。その場合、以下のように、セキュリティレベルを変更してください。
(Excel 98-2003の場合)
   新規にワークシートを作成して、ツールバーの「ツール」→「オプション」→「セキュリティー」タブ→「マクロセキュリティー」→セキュリティーレベルの「中」または「低」の選択→OK→OK→Excel終了→マクロを含むExcelファイルを開く
(Excel 2007の場合)
   新規にワークシートを作成して、左上隅の丸(Officeボタン)をクリック→下端の「Excelのオプション」を選択→左側の「セキュリティーセンター」を選択→右下の「セキュリティーセンターの設定」をクリック→左側の「マクロの設定」をクリック→「すべてのマクロを有効にする」を選択→OK→OK→Excelの終了(保存しない)→マクロを含むExcelファイルを開く
「面光源発光の受光面での照度分布の計算方法」の回答画像4
    • good
    • 0

数式処理ソフトを使ってみましたが、面光源の形状が矩形でも円形でも、照度を解析的に求めることはできないようです。



面光源が xyz空間の xy平面に平行で、その中心が z = R (m) にあり、横幅(x方向)が a (m)、縦が b (m) の矩形で、輝度が一定で、全光束がΦ (lm) のとき、xy平面上の点(x0, y0, 0)での照度は次式で表されます(これは厳密式です)。
  照度(lx) = Φ*R^2/(π*a*b)*∫[ x = -a/2 ~ a/2] ∫[ y = -b/2 ~ b/2] 1/{ ( x - x0 )^2 + ( y - y0 )^2 + R^2 }^2 dx dy
しかし、これを解析的に表すことができませんでした。

回答No.2さんのように、面光源を微小領域に分割して、数値積分で求めるのがいいと思います。簡単な方法では、光源の横( a )を M 分割、縦( b )を N 分割し、その微小領域からの光を足し合わせるという計算で積分を行えば、点(x0, y0, 0)での照度は
  照度(lx) = Φ*R^2/(π*M*N)*Σ [ i = 1 ~M] Σ [ j = 1 ~N ] 1/[ { -a/2 + (a/M)*i - x0 }^2 + { -b/2 + (b/N)*j - y0 }^2 + R^2 }^2
となります。M と N を大きくすれば精度が高まります(厳密式に近づく)。例えば、Φ = 100 lm、a = 2m、b = 1m、R = 0.5m、M = 2000、N = 1000 としたとき、x = -2m~2m、y = -2m~2m の範囲での照度分布は添付図のようになります。これは Excel VBA で計算したものですが、コードは以下のようなものです。私のパソコンでは、添付図の計算(441点の照度計算)には数分かかるので、最初は M = 200、N = 100 として様子を見たほうがいいです。VBAの使い方は分かりますか?

Function E(M As Integer, N As Integer, F As Double, a As Double, b As Double, R As Double, x As Double, y As Double)
Dim i As Integer, j As Integer
Dim s As Double, x0 As Double, y0 As Double
Dim dx As Double, dy As Double, RR As Double
Dim xx As Double, yy As Double, zz As Double
RR = R * R
dx = a / M
dy = b / N
s = 0
For i = 1 To M
x0 = -a / 2 + i * dx
xx = (x - x0) * (x - x0)
For j = 1 To N
y0 = -b / 2 + j * dy
yy = (y - y0) * (y - y0)
zz = 1 / (xx + yy + RR)
s = s + zz * zz
Next j
Next i
E = F * RR * dx * dy * s / (3.14159265358979 * a * b)
End Function
「面光源発光の受光面での照度分布の計算方法」の回答画像3
    • good
    • 0

面光源の中心を原点Oとして、面光源面内ににx軸、y軸、面光源面に垂直にOからz軸を取ります。


観測点をP(x,y,z)とする。面光源を微小な面積部分に分割しその中心をPSi(xi,yi,0)とし、面積をdSiとする。PとPSiの距離をriとする。

照度はΣ(i=1~n)dSi/ri^2に比例する。比例係数は決め方があるはず。要は数値積分です。
    • good
    • 0
この回答へのお礼

わかりやすい回答ありがとうございます。
計算してみます。

お礼日時:2010/06/01 22:02

面光源は輝度一定(Lambertian)ですか? だとしたら計算できるかもしれません(ちょっとやってみます)。

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
一定の輝度として考えています。

お礼日時:2010/06/01 22:03

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