SoloCodigo

Programación Específica => Matlab => Mensaje iniciado por: jorgeblat1 en Sábado 19 de Junio de 2010, 05:36

Título: Codigo para generar matriz aumentada
Publicado por: jorgeblat1 en Sábado 19 de Junio de 2010, 05:36
Buenas noches con todos, soy nuevo en este foro y me parecio excelente por la calidad de informacion

Necesito el codigo matlab para generar una matriz ampliada me explico

tengo una matriz  "A"   [    ](mxn)   y una matriz "B"   [   ](mxp)   -----Tienen el mismo numero de filas m
La matriz aumentada seria   [ A    I     B] (mx (n+p))    ------------------Es una matriz de filas m y columnas (n+p)
                                               
La matriz B se une a la matriz A, es solo eso no se realiza ningun calculo

Alguien porfavor puede darme una alternativa de codigo matlab de generar esa matriz aumentada leendo las dos matriz A y B
Se lo agradeceria mucho.
Título: Re: Codigo para generar matriz aumentada
Publicado por: jjasso5 en Sábado 19 de Junio de 2010, 07:35
Sigue esto:

a = [1 2
    3 4
    5 6]
b = [1 2
    3 4
    5 1]

c = [a b]

Aquí hay otro ejemplo:
matrixlab-examples.com/vectors.html
Título: Re: Codigo para generar matriz aumentada
Publicado por: jorgeblat1 en Sábado 19 de Junio de 2010, 20:15
Muy importante tu aporte, gracias

Pero si deseo una codificacion por ejemplo

function matriz aumentada (A, B, aumC)
if
.
.
.
como puedo hacer esa codificacion, me refiero a crear un programa en matlab que me genere la matriz aumentada
Título: Re: Codigo para generar matriz aumentada
Publicado por: jjasso5 en Domingo 20 de Junio de 2010, 04:24
Crea esta función, donde m1 y m2 se van a unir para formar A:

function A = mat_aum(m1, m2)
A = [m1 m2];


Para llamar esa función, debes haber creado m1 y m2 previamente.
Después la llamas así, desde otro archivo m o desde la ventana de comandos:

A = mat_aum(m1, m2)

y la matriz aumentada queda en A.
Título: Re: Codigo para generar matriz aumentada
Publicado por: jorgeblat1 en Domingo 20 de Junio de 2010, 06:18
Hola amigo jjasso5 le agradezco mucho por su apreciacion, es justo lo que necesitaba

Pero porfavor salvame la vida no recuerdo como nombrar a la matriz m1 y m2, soy nuevo en esto y me resulta un poco dificil, pero si entiendo tu planteamiento, porfavor ayudame. Creo que ya te estoy pidiendo mucho pero ayudame
Título: Re: Codigo para generar matriz aumentada
Publicado por: jjasso5 en Domingo 20 de Junio de 2010, 18:42
Ejemplo:

m1 = [1 2 3 4
4 3 2 1]

m2 = [5 6 7 8
9 7 0 1]

A = mat_aum(m1, m2)

y el resultado será

A = [1 2 3 4 5 6 7 8
4 3 2 1 9 7 0 1]

En matrixlab-examples.com hay muchos ejemplos sencillos, en caso de que quieras
más tutoriales paso por paso.
Título: Re: Codigo para generar matriz aumentada
Publicado por: jorgeblat1 en Domingo 20 de Junio de 2010, 20:23
Hola tu planteamiento es lo que buscaba, gracias

Puedo hacerte otras consultas para aprender un poco mas sobre algoritmos de matlab,me gusta el tema y quisiera a llegar a saber el tema como tu

Como puedo crear un programa (algoritmo matlab) del mismo problema anterior
pero que tenga condiciones, me explico

El programa tiene que empezar como lo dijiste
function = mat_aum(m1, m2)

Ahora el programa sige, pero con que codigo designo que la matriz sea de 20 x 20 (podria ser nombrar i 1:20 o algo asi?) por ejemplo y que tenga como condicion que el numero de filas de m1 sea igual al nº de filas de nº2, si cumple eso puede generar la matriz aumentada, si no cumple no se puede generar la matriz y que saga ese comentario en la pantalla

Gracias hermano, con tigo aprendo mucho