/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/
/* [ Created with wxMaxima version 0.8.5 ] */

/* [wxMaxima: comment start ]
   Eric Doviak          
   22 April 2012        
                        
   Math Methods 7025X   
   Problem #1           
   [wxMaxima: comment end   ] */

/* [wxMaxima: comment start ]
   Y = C + I + G                      
   C = a + b*(Y-T)                    
   G = g + n*Y                        
                                      
  [  1  -1  -1 ][ Y ]   [ I       ]   
  [ -b   1   0 ][ C ] = [ a - b*T ]   
  [  n   0   1 ][ G ]   [ g       ]   
   [wxMaxima: comment end   ] */

/* [wxMaxima: comment start ]
   solve for the equilibrium values   
                                      
   A.x = q                            
     x = inverse(A).q                 

   then obtain the equilibrium budget balance (T-G)
   and the effect of a tax increase on the budget balance
   [wxMaxima: comment end   ] */

/* [wxMaxima: input   start ] */
A:matrix([1,-1,-1],[-b,1,0],[n,0,1])$
q:matrix([I],[a-b*T],[g])$
x:matrix([Y],[C],[G])$

print("")$
print("A.x = q")$
print("")$
print(A,".",x," = ",q)$
print("")$
print("")$
print("x = inverse(A).q")$
print("")$
print(x," = ",(1/determinant(A)),".",determinant(A)*invert(A),".",q)$
/* [wxMaxima: input   end   ] */

/* [wxMaxima: input   start ] */
x:''(invert(A).q)$

Y:subst(Y=x[1],Y)[1]$
C:subst(C=x[2],C)[1]$
G:subst(G=x[3],G)[1]$

print("")$
print("the equilibrium values")$
print("")$
print("Y = ",Y)$
print("")$
print("C = ",C)$
print("")$
print("G = ",G)$
print("")$
/* [wxMaxima: input   end   ] */

/* [wxMaxima: input   start ] */
bal(T):=T-G$
dbalT(T):=''(diff(bal(T),T))$

print("")$
print("the equilibrium budget balance")$
print("")$
print("T-G = ",bal(T))$
/* [wxMaxima: input   end   ] */

/* [wxMaxima: input   start ] */
print("")$
print("the effect of a tax increase on the budget balance")$
print("")$
print((d/dT),"(T-G) = ",dbalT(T))$
print("")$
/* [wxMaxima: input   end   ] */

/* Maxima can't load/batch files which end with a comment! */
"Created with wxMaxima"$
