create 3-dimension matrix
2 views (last 30 days)
Show older comments
fatema saba
on 1 Jan 2015
Commented: fatema saba
on 1 Jan 2015
Hi
A Question please.
I want to write a function that create a 3-dimension matrix based on two 2-demnesion matrices.
I named this new matrix C.
I write something but when I run it give me "ans" but I want to give me matrix C.
this is my simple code
function Model=Base()
load('test1.mat');
%z1=[90 50 159;148 120 31;142 3 74];
%z2=[13 155 108;141 40 102;109 119 144];
[m,n]=size(z1);
for k=1
c(:,:,k)=z1;
end
for k=2
c(:,:,k)=z2;
end
Model.c=c
end
What is rong in my code please?
Thank you
2 Comments
Accepted Answer
Shoaibur Rahman
on 1 Jan 2015
If you use your current code, then call your function create1() (from command window, or in another m-file):
c = create1();
This will show c in your workspace as a struct.
But if want to see c as double instead of struct, then modify the last line of your code. Replace Model.c=c by Model = c
Then type c = create1() in your command window, which will show c in the workspace.
3 Comments
Shoaibur Rahman
on 1 Jan 2015
You you can. But in that case you cannot use function here. Instead, use just a part of your code, and save and run it.
z1=[90 50 159;148 120 31;142 3 74];
z2=[13 155 108;141 40 102;109 119 144];
c=cat(3,z1,z2)
More Answers (1)
Azzi Abdelmalek
on 1 Jan 2015
c=cat(3,z1,z2)
5 Comments
Azzi Abdelmalek
on 1 Jan 2015
But your function return just the variable model , in this case just type
Model
See Also
Categories
Find more on Matrix Indexing 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!