Not sure what commands to use for eg. 0<x<a, when certain values are given
Show older comments
I'm trying to make a script that when values for Q, a and L are plugged in the following are computed (a random x variable in between the following):
W for 0 < x < a
Qw{
0 for a < x < L
and
-W(a-x) for 0 ≤ x ≤ a
Mw{
0 for a < x ≤ L
I'm not even sure where I would start to be able to do this, so any help would be appreciated. Even just some tips. Thanks for any advice guys!
3 Comments
Image Analyst
on 6 Nov 2013
Where does Q come in to play?
dave357
on 6 Nov 2013
Image Analyst
on 7 Nov 2013
OK, so doesn't my code below do the trick?
Answers (2)
Kelly Kearney
on 6 Nov 2013
You might want to start by reading up on logical indexing (search the documentation). Your first example:
Qw = zeros(size(x));
Qw(x > 0 & x < a) = W;
Image Analyst
on 6 Nov 2013
Try something like this:
L = 20
a = 3
W = randi(9, 1, L)
% Define x to have the same number of samples between 0 and L as W does.
x = linspace(0, L, length(W));
% Get two ranges
range1 = x<a
range2 = x > a
% Make arrays
Qw = zeros(1, length(W));
Qw(range1) = W(range1)
Mw = zeros(1, length(W));
Mw(range1) = -fliplr(W(range1))
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!