Create a mesh with four variables

13 Ansichten (letzte 30 Tage)
kawak
kawak am 5 Aug. 2012
Hello,
I've got my x, y and z components which contain four variables. I would like to know if there is a matlab function, similar to meshgrid, which creates a 4^n x 4^n matrix.
Thank you
Ben

Akzeptierte Antwort

Honglei Chen
Honglei Chen am 6 Aug. 2012
  1 Kommentar
Walter Roberson
Walter Roberson am 6 Aug. 2012
Bearbeitet: Walter Roberson am 6 Aug. 2012
Maybe, but the output size would seem to be entirely wrong. ndgrid() would be used to create an (n x n x n x n) = n^4 array, not a 4^n x 4^n array.
[C1, C2, C3, C4] = ndgrid(component1_values, component2_values, component3_values, component4_values);
x = f1(C1, C2, C3, C4);
y = f2(C1, C2, C3, C4);
z = f3(C1, C2, C3, C4);
For example,
x = C1.^3 - 5*C2.^2 + cos(C3) - arctan(C4);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

kawak
kawak am 6 Aug. 2012
Thank you Honglein Chen for your answer,
However I don’t think that ndgrid() will create a full grid.
For example, if you tape the following commands
>> [X1,X2,X3,X4] = ndgrid(0:1:2); >> A=[X1 X2 X3 X4]
You will see that the mesh A does not have the point A=0 0 0 0.
Thanks
Ben
  2 Kommentare
Honglei Chen
Honglei Chen am 6 Aug. 2012
Bearbeitet: Honglei Chen am 6 Aug. 2012
Hi Kawak,
You are not reading the result correctly. For example, X1 here is a 4-dimensional array. So to look for a given point, you need to find the corresponding element in each of these four matrices. For example
>> [X1(1,1,1,1) X2(1,1,1,1) X3(1,1,1,1) X4(1,1,1,1)]
ans =
0 0 0 0
kawak
kawak am 6 Aug. 2012
Ah ok.. :-) Thanks a lot Chen, it does work now.
Thanks again

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by