"Caso de dos raíces reales, iguales y con vectores propios dependientes";

"Elementos básicos para el cálculo";
"Matriz"
A={{1,-1},{1,3}};
MatrixForm[A]
"Valores propios"
ValProp=Eigenvalues[A];
{ValProp[[1]],ValProp[[2]]}
"Vectores propios"
VectProp=Eigenvectors[A];
{MatrixForm[VectProp[[1]]],MatrixForm[VectProp[[2]]]}

"Solución por cálculo manual por pasos";
"Debo obtener el vector v auxiliar para obtener la segunda solución, lo elijo para que la siguiente ecuación tenga solución(0,0)";
MatrixForm[VectProp[[1]]-(A-ValProp[[1]]*{{1,0},{0,1}}).{v1,v2}]

"Para la segunda solución asumiré, por tanto, v= (1,0)', siendo esta segunda solución";
"Segunda solución"
sol2=((E^(ValProp[[1]]*t))*VectProp[[1]]*t+(E^(ValProp[[1]]*t))*{1,0});
MatrixForm[sol2]
"La solución general será"
solucion=c1*(E^(ValProp[[1]]*t))*VectProp[[1]]+c2*sol2;
MatrixForm[solucion]
"La solución de x(t) será"
solucion[[1]]
"La solución de y(t) será"
solucion[[2]]

"Solución directa por Mathematica, tener en cuenta que las constantes pueden ser diferentes";
"Solución"
sol=DSolve[{x'[t]==x[t]-y[t],y'[t]==x[t]+3*y[t],x[0]==1,y[0]==1},{x[t],y[t]},t];
sol[[1,1,2]]
sol[[1,2,2]]
"Evolucion de x[t] y de 2[t]"
Plot[{sol[[1,1,2]],sol[[1,2,2]]},{t,0,1},PlotStyle->Thick]
"Trayectoria"
ParametricPlot[{sol[[1,1,2]],sol[[1,2,2]]},{t,0,1},AxesOrigin->{0,0},PlotRange->{{-12,8},{0,20}},AspectRatio->1, PlotStyle->Thick]