#NEWLINE# def test_evalc( ) : #NEWLINE# #INDENT# x = Symbol ( 'x' , real = True ) #NEWLINE# y = Symbol ( 'y' , real = True ) #NEWLINE# z = Symbol ( 'z' ) #NEWLINE# assert ( ( ( x + ( I * y ) ) ** 2 ) . expand ( complex = True ) == ( ( ( y ** 2 ) + ( ( ( 2 * I ) * x ) * y ) ) - ( y ** 2 ) ) ) #NEWLINE# assert ( expand_complex ( ( z ** ( 2 * I ) ) ) == ( re ( ( ( re ( z ) + ( I * im ( z ) ) ) ** ( 2 * I ) ) ) + ( I * im ( ( ( re ( z ) + ( I * im ( z ) ) ) ** ( 2 * I ) ) ) ) ) ) #NEWLINE# assert ( expand_complex ( ( z ** ( 2 * I ) ) , deep = False ) == ( ( I * im ( ( z ** ( 2 * I ) ) ) ) + re ( ( z ** ( 2 * I ) ) ) ) ) #NEWLINE# assert ( exp ( ( I * x ) ) != ( cos ( x ) + ( I * sin ( x ) ) ) ) #NEWLINE# assert ( exp ( ( I * x ) ) . expand ( complex = True ) == ( cos ( x ) + ( I * sin ( x ) ) ) ) #NEWLINE# assert ( exp ( ( ( I * x ) + y ) ) . expand ( complex = True ) == ( ( exp ( y ) * cos ( x ) ) + ( ( I * sin ( x ) ) * exp ( y ) ) ) ) #NEWLINE# assert ( sin ( ( I * x ) ) . expand ( complex = True ) == ( I * sinh ( x ) ) ) #NEWLINE# assert ( sin ( ( x + ( I * y ) ) ) . expand ( complex = True ) == ( ( sin ( x ) * cosh ( y ) ) + ( ( I * sinh ( y ) ) * cos ( x ) ) ) ) #NEWLINE# assert ( cos ( ( I * x ) ) . expand ( complex = True ) == cosh ( x ) ) #NEWLINE# assert ( cos ( ( x + ( I * y ) ) ) . expand ( complex = True ) == ( ( cos ( x ) * cosh ( y ) ) - ( ( I * sinh ( y ) ) * sin ( x ) ) ) ) #NEWLINE# assert ( tan ( ( I * x ) ) . expand ( complex = True ) == ( tanh ( x ) * I ) ) #NEWLINE# assert ( tan ( ( x + ( I * y ) ) ) . expand ( complex = True ) == ( ( sin ( ( 2 * x ) ) / ( cos ( ( 2 * x ) ) + cosh ( ( 2 * y ) ) ) ) + ( ( I * sinh ( ( 2 * y ) ) ) / ( cos ( ( 2 * x ) ) + cosh ( ( 2 * y ) ) ) ) ) ) #NEWLINE# assert ( sinh ( ( I * x ) ) . expand ( complex = True ) == ( I * sin ( x ) ) ) #NEWLINE# assert ( sinh ( ( x + ( I * y ) ) ) . expand ( complex = True ) == ( ( sinh ( x ) * cos ( y ) ) + ( ( I * sin ( y ) ) * cosh ( x ) ) ) ) #NEWLINE# assert ( cosh ( ( I * x ) ) . expand ( complex = True ) == cos ( x ) ) #NEWLINE# assert ( cosh ( ( x + ( I * y ) ) ) . expand ( complex = True ) == ( ( cosh ( x ) * cos ( y ) ) + ( ( I * sin ( y ) ) * sinh ( x ) ) ) ) #NEWLINE# assert ( tanh ( ( I * x ) ) . expand ( complex = True ) == ( tan ( x ) * I ) ) #NEWLINE# assert ( tanh ( ( x + ( I * y ) ) ) . expand ( complex = True ) == ( ( ( sinh ( x ) * cosh ( x ) ) + ( ( I * cos ( y ) ) * sin ( y ) ) ) / ( ( sinh ( x ) ** 2 ) + ( cos ( y ) ** 2 ) ) ) . expand ( ) )