artificial ramp

determine d

(%i1) e1 : jc + ma· d = j0 + m1· d ;
(e1) d ⁢ ma + jc = d ⁢ m1 + j0

determine j1

(%i2) e2 : j1 = jc + ma· d + m2·( 1 − d) ;
(e2) j1 = d ⁢ ma + ( 1 − d ) ⁢ m2 + jc

solve for j1 and d

(%i3) s1 : linsolve([ e1, e2],[ j1, d]) ;
(s1) [ j1 = ( m2 + j0 ) ⁢ ma + jc ⁢ m2 − j0 ⁢ m2 + m1 ⁢ ( − m2 − jc ) ma − m1 , d = − jc − j0 ma − m1 ]
(%i4) ej1 : s1[ 1] ;
(ej1) j1 = ( m2 + j0 ) ⁢ ma + jc ⁢ m2 − j0 ⁢ m2 + m1 ⁢ ( − m2 − jc ) ma − m1

find the steady state j0, labeled J0

(%i5) e3 : ev( ej1, j1 = j0) ;
(e3) j0 = ( m2 + j0 ) ⁢ ma + jc ⁢ m2 − j0 ⁢ m2 + m1 ⁢ ( − m2 − jc ) ma − m1
(%i6) s2 : linsolve( e3, j0) ;
(s2) [ j0 = m2 ⁢ ma + ( jc − m1 ) ⁢ m2 − jc ⁢ m1 m2 − m1 ]
(%i7) J0 : rhs( s2[ 1]) ;
(J0) m2 ⁢ ma + ( jc − m1 ) ⁢ m2 − jc ⁢ m1 m2 − m1

introduce perturbations

(%i8) e4 : ev( ej1, j1 = J0 + dj1, j0 = J0 + dj0) ;
(e4) m2 ⁢ ma + ( jc − m1 ) ⁢ m2 − jc ⁢ m1 m2 − m1 + dj1 = ma ⁢ ( m2 ⁢ ma + ( jc − m1 ) ⁢ m2 − jc ⁢ m1 m2 − m1 + m2 + dj0 ) − m2 ⁢ ( m2 ⁢ ma + ( jc − m1 ) ⁢ m2 − jc ⁢ m1 m2 − m1 + dj0 ) + jc ⁢ m2 + m1 ⁢ ( − m2 − jc ) ma − m1

solve for dj1

(%i9) e4 : ratsimp( e4) ;
(e4) m2 ⁢ ma + ( − m1 + jc + dj1 ) ⁢ m2 + ( − jc − dj1 ) ⁢ m1 m2 − m1 = m2 ⁢ ma 2 + ( ( − 2 ⁢ m1 + jc + dj0 ) ⁢ m2 + ( − jc − dj0 ) ⁢ m1 ) ⁢ ma − dj0 ⁢ m2 2 + ( m1 2 + ( dj0 − jc ) ⁢ m1 ) ⁢ m2 + jc ⁢ m1 2 ( m2 − m1 ) ⁢ ma − m1 ⁢ m2 + m1 2
(%i10) fr : solve( e4, dj1) ;
(fr) [ dj1 = dj0 ⁢ ma − dj0 ⁢ m2 ma − m1 ]
(%i11) dj1 : rhs( fr[ 1]) ;
(dj1) dj0 ⁢ ma − dj0 ⁢ m2 ma − m1
(%i12) ratio : dj1 / dj0 ;
(ratio) dj0 ⁢ ma − dj0 ⁢ m2 dj0 ⁢ ( ma − m1 )

final result

(%i13) ratio : ratsimp( ratio) ;
(ratio) ma − m2 ma − m1

Created with wxMaxima.