Matlab - Variables globales

 
Vista:

Variables globales

Publicado por Angel (75 intervenciones) el 26/03/2009 19:55:52
Es la primera vez que me veo obligado a usar variables globales y no consigo que funcionen ¿alguien me puede ayudar? yo declaro de este modo en un script

global Np;
Np=10;

Y en una función intento llamarlo y no me hace caso, ¿alguna idea o sugerencia? gracias de antemano
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

RE:Variables globales

Publicado por Kike (304 intervenciones) el 27/03/2009 14:41:56
¿Y cómo intentaste llamar a Np en la otra función?
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

RE:Variables globales

Publicado por Angel (75 intervenciones) el 27/03/2009 16:29:49
No sé si tendra que ver la posición en que se llama

yo primero defino mi cabecera, despues las variables y luego trabajo


function sal=flat(ent)

global Np;
.
.
.

sal=ent*Np; %Por ejemplo
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

RE:Variables globales

Publicado por Kike (304 intervenciones) el 27/03/2009 18:53:40
Yo así lo hago también. ¿Qué mensaje de error te muestra?
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

RE:Variables globales

Publicado por Angel (75 intervenciones) el 27/03/2009 19:53:07
Encontré el error, muchisimas gracias de todos modos, por si alguien mas usa estas variables os lo cuento.
Yo declaraba unas 37 variables globales en un script más o menos así:

global var1, var2, var3, var4, var5, var6;
var1=[1 3 4; 6 8 0; 9 9 9];
var2=0;
var3=1:10;
...
y así sucesivamente pero a la hora de llamarlas dentro de una rutina parece ser que he de hacerlo una a una

function sal=flat(sal)
global var1;
global var2;
global var3;
...

No entiendo en sí el problema pero de este modo esta solventado
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

RE:Variables globales

Publicado por Kike (304 intervenciones) el 28/03/2009 03:33:54
Me parece raro ese error. Yo siempre las declaro todas juntas y sin importar el orden, y no pongo comas ni punto y coma.

function sal=flat(sal)
global var1 var2 var3
var1 = var2+var3;

Y en otra función:
function otra_sal=flat(sal)
global var1 var3 var2
var4 = var1+var2*var3;
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