cer chas

8
Análisis Matricial de Estructuras Carlos Armando De Castro Payares Diseño de Marcos: Problema propuesto por René Meziat, Universidad de los Andes. Vamos a definir un marco como una estructura plana compuesta por barras y nodos que carecen de masa y de peso en comparación a las cargas aplicadas que debe soportar la estructura. La estructura puede tener apoyos fijos y apoyos tipo “patín” que solo las sostienen en una dirección. El problema general es encontrar las fuerzas en cada barra como función de las cargas externas que sostiene la estructura las cuales sólo pueden actuar sobre los nodos. Como ejemplo consideraremos dos tipos de marcos: Tipo 1 Tipo 2 Note que los tipos de estructuras dados son modulares, es decir que su forma y diseño se repite regularmente, para el primero en forma de triángulos y para el segundo en forma de cuadrados cruzados por la diagonal. Desarrollar un programa que funcione para cualquiera de los dos tipos de estructuras y realice las siguientes operaciones. 1) Reciba del usuario el tipo de estructura elegida: Tipo 1 o Tipo 2. 2) Reciba del usuario el tamaño de la estructura, ya sea de Tipo 1 o de Tipo 2. 3) Reciba del usuario las cargas aplicadas en cada uno de los nodos de la estructura seleccionada en cuanto a tipo y tamaño. 4) Calcule las fuerzas transmitidas en cada uno de los elementos. 5) Mostrar al usuario las fuerzas en cada elemento. 6) Mostrar al usuario las reacciones en los apoyos. 7) Advertir de las máximas tensiones y máximas compresiones calculadas. 8) Pedir al usuario el Esfuerzo de Fluencia y el área de la sección transversal de un material y decidir si el material especificado es conveniente o no para las cargas dadas. 9) Pedir al usuario el módulo de Young del material de las barras para determinar la elongación en cada una de ellas. Solución: El algoritmo elaborado en Matlab es el siguiente:

Upload: jhon-emir

Post on 09-Sep-2015

219 views

Category:

Documents


0 download

DESCRIPTION

Cer Chas

TRANSCRIPT

  • AnlisisMatricialdeEstructurasCarlosArmandoDeCastroPayares

    DiseodeMarcos:Problemapropuesto porRenMeziat,UniversidaddelosAndes.

    Vamosadefinirunmarcocomounaestructuraplanacompuestaporbarrasynodosquecarecendemasaydepesoencomparacinalascargasaplicadasquedebesoportarlaestructura.Laestructurapuedetenerapoyos fijos y apoyos tipo patn que solo las sostienen en una direccin. El problema general esencontrar las fuerzas en cada barra como funcin de las cargas externas que sostiene la estructura lascualesslopuedenactuarsobrelosnodos.

    Comoejemploconsideraremosdostiposdemarcos:

    Tipo1

    Tipo2

    Note que los tipos de estructuras dados son modulares, es decir que su forma y diseo se repiteregularmente,paraelprimeroenformadetringulosyparaelsegundoenformadecuadradoscruzadosporladiagonal.Desarrollarunprogramaquefuncioneparacualquieradelosdostiposdeestructurasyrealicelassiguientesoperaciones.

    1) Recibadelusuarioeltipodeestructuraelegida:Tipo1oTipo2.2) Recibadelusuarioeltamaodelaestructura,yaseadeTipo1odeTipo2.3) Recibadelusuariolascargasaplicadasencadaunodelosnodosdelaestructuraseleccionadaen

    cuantoatipoytamao.4) Calculelasfuerzastransmitidasencadaunodeloselementos.5) Mostraralusuariolasfuerzasencadaelemento.6) Mostraralusuariolasreaccionesenlosapoyos.7) Advertirdelasmximastensionesymximascompresionescalculadas.8) Pedir al usuario el Esfuerzo de Fluencia y el rea de la seccin transversal de unmaterial y

    decidirsielmaterialespecificadoesconvenienteonoparalascargasdadas.9) PediralusuarioelmdulodeYoungdelmaterialdelasbarrasparadeterminarlaelongacinen

    cadaunadeellas.

    Solucin:ElalgoritmoelaboradoenMatlabeselsiguiente:

  • function[Fuerzas,Reacciones,Esfuerzos,Deformaciones,Max_Compresion,Max_Tension]=cerchas

    %ElaboradoporCarlosArmandoDeCastroPayares.%CursodeAnlisisNumrico.%UniversidaddelosAndes.

    seleccion=input('Tipodecercha(1o2):')

    switchseleccion

    case1

    %Nmerodetringulos:%

    n=input('Nmerodetringulos:')

    %Nmerodenodos:%

    n=n+2

    %Matriztopolgica:%

    %Nodosgenerales:

    fori=1:n2topologica(i,i+1)=1topologica(i,i+2)=1

    end

    topologica(n1,n)=1

    fori=1:nforj=1:n

    topologica(j,i)=topologica(i,j)end

    end

    %Nodosconapoyo:

    topologica(1,n+1)=3topologica(n,n+1)=1

    fori=2:n1topologica(i,n+1)=0

    end

    %Matrizdengulos:%

    fori=1:2:n2

  • angulos(i,i+1)=pi/3angulos(i,i+2)=0

    end

    fori=2:2:n2angulos(i,i+1)=pi/3angulos(i,i+2)=0

    end

    angulos(n1,n)=pi/3

    fori=1:nforj=i+1:n

    angulos(j,i)=angulos(i,j)+piend

    end

    %**************************************************************************%LlenadodelamatrizdecoeficientesA:%**************************************************************************

    %Barrasdelaestructura.Diagonalsuperior:%

    k=1m=1fori=1:n

    forj=i+1:niftopologica(i,j)==1

    A(2*k1,m)=cos(angulos(i,j))A(2*k,m)=sin(angulos(i,j))m=m+1

    endendk=k+1

    end

    %Diagonalinferior:%

    k=1m=1fori=1:n

    p=0forj=i+1:n

    iftopologica(i,j)==1p=p+1A(2*k1+2*p,m)=A(2*k1,m)A(2*k+2*p,m)=A(2*k,m)m=m+1

    endendk=k+1

    end

  • %Nodosconapoyo:%

    L=length(A(1,:))k=1fori=1:n

    iftopologica(i,n+1)~=0switchtopologica(i,n+1)case1

    A(2*i,L+k)=1k=k+1

    case2A(2*i1,L+k)=1k=k+1

    case3A(2*i,L+k+1)=1A(2*i1,L+k)=1k=k+2

    endend

    end

    case2

    %Nmerodecuadrados:%

    n=input('Nmerodecuadrados:')

    %Nmerodenodos:%

    n=4+2*(n1)

    %Matriztopolgica:%

    %Nodosgenerales:

    fori=1:n2topologica(i,i+1)=1topologica(i,i+2)=1

    end

    topologica(n1,n)=1

    fori=1:nforj=1:n

    topologica(j,i)=topologica(i,j)end

    end

    %Nodosconapoyo:

    topologica(1,n+1)=0topologica(2,n+1)=3topologica(n,n+1)=1

  • fori=3:n1topologica(i,n+1)=0

    end

    %Matrizdengulos:%

    fori=1:2:n3angulos(i,i+1)=pi/2angulos(i,i+2)=0

    end

    fori=2:2:n2angulos(i,i+1)=pi/4angulos(i,i+2)=0

    end

    angulos(n1,n)=pi/2

    fori=1:nforj=i+1:n

    angulos(j,i)=angulos(i,j)+piend

    end

    %**************************************************************************%LlenadodelamatrizdecoeficientesA:%**************************************************************************

    %Barrasdelaestructura.Diagonalsuperior:%

    k=1m=1fori=1:n

    forj=i+1:niftopologica(i,j)==1

    A(2*k1,m)=cos(angulos(i,j))A(2*k,m)=sin(angulos(i,j))m=m+1

    endendk=k+1

    end

    %Diagonalinferior:%

    k=1m=1fori=1:n

    p=0forj=i+1:n

    iftopologica(i,j)==1

  • p=p+1A(2*k1+2*p,m)=A(2*k1,m)A(2*k+2*p,m)=A(2*k,m)m=m+1

    endendk=k+1

    end

    %Nodosconapoyo:%

    L=length(A(1,:))k=1fori=1:n

    iftopologica(i,n+1)~=0switchtopologica(i,n+1)case1

    A(2*i,L+k)=1k=k+1

    case2A(2*i1,L+k)=1k=k+1

    case3A(2*i,L+k+1)=1A(2*i1,L+k)=1k=k+2

    endend

    end

    otherwise

    'Seleccinnovlida.'

    end

    %Lecturadelascargas:%

    ['Cargasverticalespositivashaciaabajo,cargashorizontalespositivashacialaizquierda.']fori=1:n

    iftopologica(i,n+1)==0Fx(i)=input(['Cargahorizontalenelnodo'num2str(i)':'])Fy(i)=input(['Cargaverticalenelnodo'num2str(i)':'])else

    Fx(i)=0Fy(i)=0

    endend

    fori=1:nb(2*i1,1)=Fx(i)

    end

    fori=1:nb(2*i,1)=Fy(i)

  • end

    %**************************************************************************%Solucindelsistema:%**************************************************************************

    X=A^1*b

    fori=1:length(X)3Fuerzas(i)=X(i)

    endfori=1:3

    Reacciones(i)=X(length(X)(3i))end

    %**************************************************************************%Lecturadelaspropiedadesdelmaterial:%**************************************************************************

    E=input('MdulodeYoungdelmaterialE=')Ar=input('reatransversaldelasbarrasAr=')Sy=input('EsfuerzodefluenciadelmaterialSy=')

    Esfuerzos=1/Ar*FuerzasDeformaciones=Esfuerzos/E

    %**************************************************************************%Valoresmximosdelasfuerzas:%**************************************************************************

    Max_Compresion=Fuerzas(1)Max_Tension=Fuerzas(1)

    fori=2:length(Fuerzas)ifabs(Fuerzas(i))>abs(Max_Compresion)&&Fuerzas(i)abs(Max_Tension)&&Fuerzas(i)>=0Max_Tension=Fuerzas(i)end

    end

    w=0i=1whilei

  • ifw==0['Elmaterialesadecuado.']

    else['Elmaterialesinadecuado.Elesfuerzosuperaellmite

    elstico.']end