区間に応じて2つの関数を使い分けて演算したい

조회 수: 1 (최근 30일)
kenichiro inagaki
kenichiro inagaki 2021년 2월 18일
댓글: kenichiro inagaki 2021년 2월 19일
例:
x<0ではy=exp(x), x>=0ではy=sin(x) の yを計算で取り出したいです。
plotのしかたまでは見つけられますが、データをワークスペースにどう取り出せばいいのかわかりません。

채택된 답변

Hernia Baby
Hernia Baby 2021년 2월 18일
y1 = y(x(x<0));
y2 = y(x(x>=0));
のようにすれば取り出せます。
以下は一度正負で異なる関数を返し、まとめてプロットする方法です。
参考にどうぞ。
clear, clc, close all;
x = -3:0.1:3;
x = x';
y1 = exp(x(x<0));
y2 = sin(x(x>=0));
figure(1);
plot(x,[y1; y2],'o')
  댓글 수: 3
Hernia Baby
Hernia Baby 2021년 2월 19일
その認識であってます。
列の統合にはカンマ( , )が必要です。
2列目にyを統合する場合は以下の手順を行ってください。
-----------
y = [y1; y2];
xy = [x, y];
-----------
xy(:,1) に x の列ベクトル、xy(:,2) に y の列ベクトル
がそれぞれ格納されます。
kenichiro inagaki
kenichiro inagaki 2021년 2월 19일
ありがとうございます!できました!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 グラフィックス에 대해 자세히 알아보기

태그

제품


릴리스

R2019a

Community Treasure Hunt

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

Start Hunting!