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

1 visualización (últimos 30 días)
kenichiro inagaki
kenichiro inagaki el 18 de Feb. de 2021
Comentada: kenichiro inagaki el 19 de Feb. de 2021
例:
x<0ではy=exp(x), x>=0ではy=sin(x) の yを計算で取り出したいです。
plotのしかたまでは見つけられますが、データをワークスペースにどう取り出せばいいのかわかりません。

Respuesta aceptada

Hernia Baby
Hernia Baby el 18 de Feb. de 2021
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 comentarios
Hernia Baby
Hernia Baby el 19 de Feb. de 2021
その認識であってます。
列の統合にはカンマ( , )が必要です。
2列目にyを統合する場合は以下の手順を行ってください。
-----------
y = [y1; y2];
xy = [x, y];
-----------
xy(:,1) に x の列ベクトル、xy(:,2) に y の列ベクトル
がそれぞれ格納されます。
kenichiro inagaki
kenichiro inagaki el 19 de Feb. de 2021
ありがとうございます!できました!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre グラフィックス en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2019a

Community Treasure Hunt

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

Start Hunting!