Matlab - preallocating

 
Vista:
sin imagen de perfil
Val: 96
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

preallocating

Publicado por Jorge Ivan (65 intervenciones) el 11/03/2020 20:06:49
Buenas a todos:

Como hago para escribir el preallocating para M? que es matriz 3D


1
2
3
4
5
for i=1:10000
 
    M(:,:,i)=[1,   1;   1,   1];
 
end


# gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

preallocating

Publicado por Daniel (354 intervenciones) el 11/03/2020 21:05:02
Tanto ones como zeros puede crear matrices de cualquier dimensión. Solamente hay que llamarlo con el tamaño de la matriz y se crean matrices de unos o cero respectivamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 96
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

preallocating

Publicado por Jorge Ivan (65 intervenciones) el 11/03/2020 22:02:22
ok pero no encuentro la forma, se hacerlo para un 1D o 2D , en este caso pongo por ejemplo M=zeros(500:500:500) pero me da error
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

preallocating

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 11/03/2020 22:42:20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
>> a=zeros(1,5)
 
a =
 
     0     0     0     0     0
 
>> a=zeros(5,1)
 
a =
 
     0
     0
     0
     0
     0
 
>> a=zeros(5)
 
a =
 
     0     0     0     0     0
     0     0     0     0     0
     0     0     0     0     0
     0     0     0     0     0
     0     0     0     0     0
 
>> a=zeros(5,3)
 
a =
 
     0     0     0
     0     0     0
     0     0     0
     0     0     0
     0     0     0
 
>> a=zeros(5,3,2)
 
a(:,:,1) =
 
     0     0     0
     0     0     0
     0     0     0
     0     0     0
     0     0     0
 
 
a(:,:,2) =
 
     0     0     0
     0     0     0
     0     0     0
     0     0     0
     0     0     0
 
>> a=zeros(500,500,500);
>> whos a
  Name        Size                      Bytes  Class     Attributes
 
  a         500x500x500            1000000000  double
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 96
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

preallocating

Publicado por Jorge Ivan (65 intervenciones) el 12/03/2020 00:09:26
Nada mejor que un buen ejemplo para entender, gracias si me sirvió.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

preallocating

Publicado por Daniel (354 intervenciones) el 11/03/2020 22:47:05
Las dimensiones se separan con comas. Tantas como se quiera.

Si pones un solo valor crea una matriz cuadrada, para hacer vectores hay que poner 1,n o n,1.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar