Non-Linear system of equations in 12 variables and 12 equations

Hi All,
I am trying to solve a system of 12equations and 12 variables in matlab using fsolve, LMFnlsq, LMFsolve. All the solvers are giving me so random solutions not even close enough. For a nominal case , ( in this system where the left and right are symmetric) the solvers dump good answers. But when I induce some variation or create asymmetry, the answers are so weird!
Can anyone suggest any other methods that I can use here? My system deals with electronics i.e. voltages in the order of 10^-3 Volts, current in the order of 10^-6 to 10^-9 amperes.
If required I can send my system of equations and also my code that i am using.
Thanks a lot for all your time.
Thanks,
Venkat
[Merged information from Answer]
To make it easy, I have added the equations for your understanding.
[((knal_rise15*(1.5 - (bl_rise15*Y(1,1)) - (gl_rise15*Y(11,1)))*(vblr15 - Y(1,1))) - (knl15*(vqr - (gnl15*Y(9,1)) + anl15*Y(1,1))));
((knal_rise18*(1.8 - (bl_rise18*Y(1,1)) - (gl_rise18*Y(11,1)))*(vblr18 - Y(1,1))) - (knl18*(vqr - (gnl18*Y(9,1)) + anl18*Y(1,1))));
((knal_fall15*(1.5 - (bl_fall15*vblf15) - (gl_fall15*Y(11,1)))*(Y(2,1) - vblf15)) - (kpl15*(0.8 - vqf - (gpl15*Y(7,1)) + apl15*(0.8-Y(2,1))))) ;
(ap_fall + ((0.8 - Y(2,1))*dp_fall) - (gp_fall*Y(8,1)) +(tp_fall*(0.8 - vqf)) - an_fall - (dn_fall*Y(2,1)) + (gn_fall*Y(10,1)) - (tn_fall*vqf)) ;
((knal_fall18*(1.8 - (bl_fall18*vblf18) - (gl_fall18*Y(11,1)))*(Y(3,1) - vblf18)) - (kpl18*(0.8 - vqf - (gpl18*Y(7,1)) + apl18*(0.8-Y(3,1))))) ;
(ap_fall + ((0.8 - Y(3,1))*dp_fall) - (gp_fall*Y(8,1)) + (tp_fall*(0.8 - vqf)) - an_fall - (dn_fall*Y(3,1)) + (gn_fall*Y(10,1)) - (tn_fall*vqf));
((knar_rise15*(1.5 - (br_rise15*Y(4,1)) - (gr_rise15*Y(12,1)))*(vbrr15 - Y(4,1))) - (knr15*(vqr - (gnr15*Y(10,1)) + anr15*Y(4,1)))) ;
((knar_rise18*(1.8 - (br_rise18*Y(4,1)) - (gr_rise18*Y(12,1)))*(vbrr18 - Y(4,1))) - (knr18*(vqr - (gnr18*Y(10,1)) + anr18*Y(4,1)))) ;
((knar_fall15*(1.5 - (br_fall15*vbrf15) - (gr_fall15*Y(12,1)))*(Y(5,1) - vbrf15)) - (kpr15*(0.8 - vqf - (gpr15*Y(8,1)) + apr15*(0.8-Y(5,1))))) ;
(ap_fall + ((0.8 - Y(5,1))*dp_fall) - (gp_fall*Y(7,1)) + (tp_fall*(0.8 - vqf)) - an_fall - (dn_fall*Y(5,1)) + (gn_fall*Y(9,1)) - (tn_fall*vqf)) ;
((knar_fall18*(1.8 - (br_fall18*vbrf18) - (gr_fall18*Y(12,1)))*(Y(6,1) - vbrf18)) - (kpr18*(0.8 - vqf - (gpr18*Y(8,1)) + apr18*(0.8-Y(6,1))))) ;
(ap_fall + ((0.8 - Y(6,1))*dp_fall) - (gp_fall*Y(7,1)) + (tp_fall*(0.8 - vqf)) - an_fall - (dn_fall*Y(6,1)) + (gn_fall*Y(9,1)) - (tn_fall*vqf));];
The tn_fall,kna_rise et all fitting parameters so don't bother much about them. The Yi from Y(1,1) through Y(12,1) are the various variables. Y is a column matrix. I am providing some initial guess based on the results I expect to see.
Anyone any help is highly appreciated! Thanks a lot...
Thanks, Venkat

Answers (1)

I spun this through Maple for about 80 minutes with no sign of resolution. If you could indicate some typical values for the variables then I could see if that helps.
For my future reference, the Maple representation is
[knal_rise15*(1.5-bl_rise15*Y[1]-gl_rise15*Y[11])*(vblr15-Y[1])-knl15*(vqr-gnl15*Y[9]+anl15*Y[1]),
knal_rise18*(1.8-bl_rise18*Y[1]-gl_rise18*Y[11])*(vblr18-Y[1])-knl18*(vqr-gnl18*Y[9]+anl18*Y[1]),
knal_fall15*(1.5-bl_fall15*vblf15-gl_fall15*Y[11])*(Y[2]-vblf15)-kpl15*(.8-vqf-gpl15*Y[7]+apl15*(.8-Y[2])),
ap_fall+(.8-Y[2])*dp_fall-gp_fall*Y[8]+tp_fall*(.8-vqf)-an_fall-dn_fall*Y[2]+gn_fall*Y[10]-tn_fall*vqf,
knal_fall18*(1.8-bl_fall18*vblf18-gl_fall18*Y[11])*(Y[3]-vblf18)-kpl18*(.8-vqf-gpl18*Y[7]+apl18*(.8-Y[3])),
ap_fall+(.8-Y[3])*dp_fall-gp_fall*Y[8]+tp_fall*(.8-vqf)-an_fall-dn_fall*Y[3]+gn_fall*Y[10]-tn_fall*vqf,
knar_rise15*(1.5-br_rise15*Y[4]-gr_rise15*Y[12])*(vbrr15-Y[4])-knr15*(vqr-gnr15*Y[10]+anr15*Y[4]),
knar_rise18*(1.8-br_rise18*Y[4]-gr_rise18*Y[12])*(vbrr18-Y[4])-knr18*(vqr-gnr18*Y[10]+anr18*Y[4]),
knar_fall15*(1.5-br_fall15*vbrf15-gr_fall15*Y[12])*(Y[5]-vbrf15)-kpr15*(.8-vqf-gpr15*Y[8]+apr15*(.8-Y[5])),
ap_fall+(.8-Y[5])*dp_fall-gp_fall*Y[7]+tp_fall*(.8-vqf)-an_fall-dn_fall*Y[5]+gn_fall*Y[9]-tn_fall*vqf,
knar_fall18*(1.8-br_fall18*vbrf18-gr_fall18*Y[12])*(Y[6]-vbrf18)-kpr18*(.8-vqf-gpr18*Y[8]+apr18*(.8-Y[6])),
ap_fall+(.8-Y[6])*dp_fall-gp_fall*Y[7]+tp_fall*(.8-vqf)-an_fall-dn_fall*Y[6]+gn_fall*Y[9]-tn_fall*vqf]

6 Comments

Hi Walter,
Sorry about that my bad. I should given the guess points. Here are the guess points.
A = [ 0.315 ; 0.38 ; 0.38 ; 0.35 ; 0.39 ; 0.39 ; 0.5 ; 0.5 ; 0.5 ; 0.5 ;0.5 ; 0.5 ] ;
I can actually send u the files I have with me. That will help you. Is there a way I can attach my files in here??
http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers
However, I will not be running it through MATLAB (I don't have the right toolboxes.)
It isn't the guess points for Y that I need as much as the values of knal_rise15 and so on (though the guess points don't hurt.)
Gotcha! :) I will send you a link where I will upload the files in zip format. But I think having the matlab codes will help you better figure out what I am trying to do.
http://www.sendspace.com/file/vyxbyk
Here is the link you can download the files from.
Thanks a lot!
Venkat
Hi Walter,
Did you get a chance to look at this? and were you able to download the stuff?
Thanks,
Venkat
Sorry, I missed the previous update and have not looked at the files.
Hi Walter,
That's ok. Here are the files for you to download again.
Actually the previous link still works. You can use the same one. here it is.
http://www.sendspace.com/file/vyxbyk
The name of the directory is For_debug.
P.S: I didnt get an email for you reply which is why It took me 3 r 4 days to reply back. Sorry about that.
Thanks a lot again!
Venkat

Sign in to comment.

Categories

Asked:

on 14 Feb 2012

Edited:

on 15 Oct 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!