
Solve non-separateable equation
    5 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Masood Salik
 el 30 de En. de 2021
  
    
    
    
    
    Editada: John D'Errico
      
      
 el 31 de En. de 2021
            I have a equation like this . Its just a simplified form of my actual equation to illustrate my query. The output y and input time t are non seperatable. 

I wanted to solve it in Matlab to find the value of y for the time interval t
 I saw examples of fsolve and fzero. But all of them are for seperatable functions. How can I solve this one?
I tried this too. But Error
y^2 = @(x)y*x^2 +(1+x)/(y+1);
t = linspace(-3.5,3.5);
plot(t,y(t),t,zeros(size(t)),'k-')
xlabel('x')
ylabel('y(x)')
0 comentarios
Respuesta aceptada
  John D'Errico
      
      
 el 31 de En. de 2021
        
      Editada: John D'Errico
      
      
 el 31 de En. de 2021
  
      The usual name for this is an implicit function. There is no relationship where you can solve directly for y as a function of x. Actually, in the function you wrote, it is technically possible, but you said this is not your real problem.)
Of course, this syntax is meaningless in MATLAB:
   y^2 = @(x)y*x^2 +(1+x)/(y+1);
You have an implicit function. The simplest way to solve the problem is to use fimplicit to plot it.
Fxy = @(x,y) -y.^2 + y.*x.^2 + (1 + x)./(1 + y);
fimplicit(Fxy,[-3.5,3.5])
xlabel X
ylabel Y

As you can see in the plot, for ANY given x, there are multiple values of y. So it is not a single valued function, but one with multiple branches, and a singularity.
0 comentarios
Más respuestas (0)
Ver también
Categorías
				Más información sobre Optimization Toolbox en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

