Implementation of tessarines in Mathematica

  • Context: Mathematica 
  • Thread starter Thread starter Anixx
  • Start date Start date
  • Tags Tags
    Mathematica
Click For Summary
SUMMARY

The implementation of split-complex numbers, also known as tessarines, in Mathematica is achieved through a specific code snippet that utilizes the $Pre variable. This allows users to seamlessly integrate the split-complex unity J into various functions such as J^I, Log[J], and Gamma[J + 2]. Additionally, a similar approach is provided for dual numbers using the dual unity Eps, enhancing Mathematica's capabilities for complex mathematical computations.

PREREQUISITES
  • Familiarity with Mathematica programming language
  • Understanding of split-complex numbers and their properties
  • Knowledge of dual numbers and their applications
  • Basic experience with matrix functions in Mathematica
NEXT STEPS
  • Explore advanced functions in Mathematica for complex number manipulation
  • Learn about the applications of split-complex numbers in engineering and physics
  • Investigate the implementation of hypercomplex numbers in Mathematica
  • Study the implications of dual numbers in automatic differentiation
USEFUL FOR

This discussion is beneficial for mathematicians, engineers, and software developers who utilize Mathematica for advanced mathematical modeling and computations involving complex and dual numbers.

Anixx
Messages
88
Reaction score
11
Hello, guys!

I just wanted to share that there is a way to easily implement split-complex numbers (and tessarines) in Mathematica.

Code:
$Pre = If[FreeQ[#, J], #, Module[{tmp},
       
     tmp = Evaluate[
        MatrixFunction[Function[J, #], {{0, 1}, {1, 0}}]] //
       FullSimplify;
           tmp /. {{a_, b_}, {b_, a_}} -> a + J b]] &;

After this code you can use split-complex unity J in any functions. I recommend to try
Code:
J^I
I^J
J^J
Log[J]
Sqrt[J]
Gamma[J + 2]
Zeta[J + 1]
PolyGamma[J + 2]
Exp[J]
(-1)^J
2^J

Have fun!
 
  • Like
Likes   Reactions: Dale
Physics news on Phys.org
A similar code implementing dual numbers (dual unity Eps):

Code:
$Pre = If[FreeQ[#, Eps], #,
    Module[{tmp},
     tmp = Evaluate[
        MatrixFunction[Function[Eps, #], {{0, 0}, {1, 0}}]] //
       FullSimplify;
     tmp /. {{a_, b_}, {0, a_}} -> a + Eps b /. {{a_, 0}, {b_, a_}} ->
        a + Eps b]] &;
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
Replies
3
Views
3K
  • · Replies 19 ·
Replies
19
Views
3K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 7 ·
Replies
7
Views
2K