オシロのCH1,CH2それぞれの波形データを取り込む。位相差があるためにCH1の値がaのときCH2の値はb、cとなった場合(リサージュ図形は楕円になるとき)ですが、
(bとcの差)*CH1の1周期分=楕円のリサージュ図形の面積
となりますよね?
この場合の
(bとcの差)*CH1の1周期分=楕円のリサージュ図形の面積
の部分をVB4で組みたいのですがどのような感じにすればよいでしょうか?ちなみにX-Yモードにすると波形データが読み取れないため、別々に読み取ったあとで計算する形なのでこのようになっています。
分かりにくいかもしれませんがよろしくお願いします。
No.2ベストアンサー
- 回答日時:
座標原点を内部に含むような多角形を考えます。
原点の点番号を0とし、多角形の頂点に順番に、番号1,2,・・・をふるとします。番号のふり方は、始点はどこでもいいですが、必ず左回りです。原点と多角形の頂点を結んでできる三角形、012,023,・・・の面積の総和が、多角形の面積になる事は明らかと思います。
それぞれの分割三角形の面積は、例えば、012に対して、
A(1)=1/2×( x(0)・y(1)-x(1)・y(0)
+x(1)・y(2)-x(2)・y(1)
+x(2)・y(0)-x(0)・y(2) )
で計算できる事がわかっています。ところが、いま点(x(0),y(0))は原点なので、(x(0),y(0))=(0,0)です。従って、A(1)は、
A(1)=1/2×( x(1)・y(2)-x(2)・y(1) )
と簡単になります。同じ事を、A(1),A(2),・・・に対して行い、足し合わせれば、
A=ΣA(i)
=1/2×Σ(x(i)・y(i+1)-x(i+1)・y(i))
ただしΣはiについての和で、i=1~n.
です。ただしこの計算は、頂点を左周りに順序付ける事を前提にしています。リサージュは、右周りに回転するかもしれません。その時は、面積が負の値で計算されるので、絶対値をつけます。
A=|1/2×Σ(x(i)・y(i+1)-x(i+1)・y(i))|
さらに原点が多角形内部にない場合も、同じ式が使えるとだけ、ここでは述べます。この場合は、分割三角形の頂点順序が、原点に対してどういう向きに並ぶかを、図を描いて考えれば、すぐわかります。
No.1
- 回答日時:
プログラムというより、数学の問題っぽいですが・・・。
以下の事を前提とします。(1)リサージュの1周期分の点列(CH1,CH2)は順番に記録できる。
(2)上記を(x(i),y(i)),i=1~n+1としたとき、(x(1),y(1))=(x(n+1),y(n+1))であるように記録する(リサージュは閉じている)。
面積は、以下の式で計算できます。
A=|1/2×Σ(x(i)・y(i+1)-x(i+1)・y(i))|
ただしΣはiについての和で、i=1~n.
サンプリング点でリサージュを折れ線近似した面積です。
回答ありがとうございます!確かに数学ですね( ^ ^ ;)
自分なりに式の意味を理解しとうとしたのですが分からなくて・・・。
x(i)・y(i+1)-x(i+1)・y(i)は何を意味しているのか、またなぜ1/2をかけるのか?
面倒かもしれないですが、お願いしますm( u u )m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 物理学 歌口と楕円形の太鼓 1 2023/05/15 23:21
- C言語・C++・C# C++のcinの動作 5 2023/02/26 00:13
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- 物理学 波動方程式のようなもの 1 2023/05/13 07:23
- 物理学 相対性理論と円運動について。 1 2023/01/30 11:39
- PowerPoint(パワーポイント) 2016EXCEL→2016PowerPointにコピペすると図形がゆがみます 5 2022/03/31 11:44
- C言語・C++・C# 現在プログラムを作っているのですが、実行したときに写真のように結果が表示されるのですが、これを CH 2 2023/01/18 16:22
- タブレット タブレットのランプ 2 2022/10/25 22:03
- 一戸建て 現在、新築の照明計画をしているところです。 住宅メーカーからの照明計画の図面がこれでいいのかさっぱり 4 2022/10/01 22:05
- 物理学 磁性体に関する熱力学の問題が分かりません 1 2023/07/18 03:23
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
モジュラス103の計算とは何でし...
-
FORTRANをご存じの方がいらっし...
-
C言語についてです。 再帰を使...
-
VBAの再計算が反映されない件に...
-
バッチファイルでウインドウを...
-
伝達関数のステップ応答→グラフ...
-
Windows のlog()の計算方法
-
排他的論理和 BCC(水平パリテ...
-
WEBページ上で計算をさせるには...
-
Excel VBAにてFFT
-
表計算上の式がVBA実行中に、メ...
-
matlab計算での進捗状況を知りたい
-
エクセル以外で麻雀の成績を管...
-
情報処理 ポインタ渡しによる...
-
MT4 固まる
-
傾いた四角形内の範囲の条件式
-
桁区切り数値の計算
-
VB6.0で逆ポーランド記法のソー...
-
エクセルで特定のセルのみを任...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
mod でうまく
-
めちゃきれい
-
VBAの再計算が反映されない件に...
-
排他的論理和 BCC(水平パリテ...
-
バッチファイルでウインドウを...
-
モジュラス103の計算とは何でし...
-
EXCELなどで「返す」という表現
-
変化させるセルが変化しない
-
60進数の四則計算
-
プログラムの質問
-
VBでReplace
-
数値計算の高速化 (cos, sin, exp)
-
C言語についてです。 再帰を使...
-
Javaを使った行列計算
-
C言語のプログラミングの問題で...
-
エクセルで特定のセルのみを任...
-
matlab計算での進捗状況を知りたい
-
CとFORTRANの計算速度はどちら...
-
matlabで計算終了
おすすめ情報