if文の作り方を教えてください。

171 次查看(过去 30 天)
masaki yamate
masaki yamate 2017-1-20
if文の中の矩形波の中にX2のような矩形波を当てはめて、この矩形波と取得したYaw角(Yaw(121500:129500))の数値が近似した場合、disp('打音検査')と表示させたいのですが、近似式と取得した値が一致しているかを判断させるコードの作り方がわかりません。近似しなかった場合、次の階層に進むようにしたいのですがどうすればよいでしょうか。
x2 = 100*square(2*pi*(0.01475)*time(121500:129500));
plot(time(121500:129500),x2,'r-',time(121500:129500),Yaw(121500:129500))
% if矩形波(○)
% disp('橋面舗装、打音検査')
% else矩形波(×)
if文ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
x=142%梯子下内の閾値設定
for k=1:12
fprintf('%2.0f\n',k);
if (data6(k,8)<-15);
% 右(ピンク)
if (data6(k,11)>=300);
disp('再橋梁下内からの確認シーン')
else(data6(k,11)<300);
disp('橋梁下内からの確認シーン')
end
elseif(data6(k,8)<10 & data6(k,8)>=-15);
% 真ん中(紫)
if(data6(k,7)<=50);
disp('全景')
else(data6(k,7)>50);
disp('上流からの確認シーン')
end
else(10>data6(k,8));% 左(緑)
if(data6(k,24)<x);
disp('下流/再下流からの確認シーン')
else(data6(k,24)>=x);
% if矩形波(○)
% disp('橋面舗装、打音検査')
% else矩形波(×)
if(data6(k,23)>=3);
disp('支承と橋台裏確認')
elseif(data6(k,23)<3);
if(data6(k,2)<-60);
disp('排水装置')
elseif(data6(k,2)>=-60);
if(data6(k,8)>=40);
disp('伸縮装置')
elseif(data6(k,8)<40);
if(data6(k,24)<x+3);
disp('地ふく')
elseif(data6(k,24)>=x+3);
disp('こうらん')
end
end
end
end
end
end
end
  4 个评论
Tohru Kikawada
Tohru Kikawada 2017-1-23
下記の内容に関連していますでしょうか。
masaki yamate
masaki yamate 2017-1-23
はい、関連しております。

请先登录,再进行评论。

采纳的回答

Tohru Kikawada
Tohru Kikawada 2017-1-24
たとえば平均二乗誤差がある値よりも小さくなったら処理を進めるような処理は下記のように記載できます。
mse = mean((x2-Yaw(121500:129500)).^2);
if mse < 0.01
disp('橋面舗装、打音検査');
else
% それ以外の処理
end
  2 个评论
Takuji Fukumoto
Takuji Fukumoto 2017-1-24
2つの波形の平均二乗誤差の算出についてはTohruさんが書かれたとおりかと思います。
数式と波形では差が大きいので、
立ち上がり時間やパルス幅、周波数など測定で評価することもできるかもしれません。
masaki yamate
masaki yamate 2017-1-25
ありがとうございます。拝借した結果反映されました。 これを参考にフローを作成させていただきます。

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Biomechanics 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!