Lo que hace fsolve es sencillo, resuelve un sistema de ecuaciones no lineales.
Ahora, si tu le pasas un arreglo de 2 elementos fsolve espera que la función que le pases (my_fun) devuelva un arreglo de 2 elementos. Esto es porque el segundo parámetro que le pasas son los puntos en el eje X de donde quieres que empiece cada ecuación en el sistema de ecuaciones. [-pi/2, 0]
Mira este link en la sección 1.2 ejemplo 4 y 5
https://sites.google.com/a/aims-sene...tial-equations
No puedo arreglar tu script porque no se lo que tratas de hacer.
Si tienes un sistema de ecuaciones de 2 ecuaciones o si tienes una sola ecuación y quieres que empiece en -pi/2.
Si es el caso del sistema de ecuaciones de 2 ecuaciones entonces obviamente te falta devolver una lista de tamaño 2, donde el primer item es la evaluación de tu primera ecuación y el segundo es la evaluacion de tu segunda ecuación.
Si solo tienes una sola ecuación entonces no veo porque envías una lista con 2 elementos. Y porque ademas haces uso de los 2 argumentos.
Si nos pusieras el sistema de ecuaciones que estas tratando de resolver te podríamos ayudar a implementarlo.