applysym.tst 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. off echo, dfprint$ % FJW
  2. % You need crack.red and applysym.red to run this demo.
  3. % To use other contents of the program applysym, not demonstrated
  4. % in this demo you need the program liepde.red.
  5. %
  6. % To run this demo you read in files with
  7. % in "crack"$
  8. % in "applysym.red"$
  9. % or, to speed up the calculation you compile them before with
  10. % faslout "crack"$
  11. % in "crack"$
  12. % faslend$
  13. % faslout "applysym"$
  14. % in "applysym.red"$
  15. % faslend$
  16. % and then load them with
  17. % load crack,applysym$
  18. lisp(depl!*:=nil)$ % clearing of all dependences
  19. setcrackflags()$
  20. lisp(print_:=nil)$
  21. lisp <<
  22. write"-------------------------------------------------------"$terpri()$
  23. write"This file is supposed to provide an automatic test of"$terpri()$
  24. write"the program APPLYSYM. On the other hand the application"$terpri()$
  25. write"of APPLYSYM is an interactive process, therefore the"$terpri()$
  26. write"interested user should inspect the example described"$terpri()$
  27. write"in APPLYSYM.TEX which demonstrates the application"$terpri()$
  28. write"of symmetries to integrate a 2nd order ODE."$terpri()$
  29. write"Here the program QUASILINPDE for integrating first"$terpri()$
  30. write"order quasilinear PDE is demonstrated."$terpri()$terpri()$
  31. write"The following equation comes up in the elimination"$terpri()$
  32. write"of resonant terms in normal forms of singularities"$terpri()$
  33. write"of vector fields (C.Herssens, P.Bonckaert, Limburgs"$terpri()$
  34. write"Universitair Centrum/Belgium, private communication)."$terpri()$
  35. write"-------------------------------------------------------"$terpri()$
  36. >>$
  37. depend w,x,y,z$
  38. QUASILINPDE( df(w,x)*x+df(w,y)*y+2*df(w,z)*z-2*w-x*y, w, {x,y,z} )$
  39. nodepend w,x,y,z$
  40. lisp <<terpri()$
  41. write"-------------------------------------------------------"$terpri()$
  42. write"Comment:"$terpri()$
  43. write"The result means that w is defined implicitly through "$terpri()$
  44. terpri()$
  45. write" x*y - log(z)*x*y + 2*w y "$terpri()$
  46. write"0 = ff(-----,---------------------,---------) "$terpri()$
  47. write" z z sqrt(z) "$terpri()$
  48. terpri()$
  49. write"with an arbitrary function ff of 3 arguments. As the PDE"$terpri()$
  50. write"was linear, the arguments of ff are such that we can "$terpri()$
  51. write"solve for w: "$terpri()$
  52. terpri()$
  53. write" x*y y "$terpri()$
  54. write"w = log(z)*x*y/2 + z*f(-----,---------) "$terpri()$
  55. write" z sqrt(z) "$terpri()$
  56. terpri()$
  57. write"with an arbitrary function f of 2 arguments."$terpri()$terpri()$
  58. write"-------------------------------------------------------"$terpri()$
  59. write"The following PDEs are taken from E. Kamke,"$terpri()$
  60. write"Loesungsmethoden und Loesungen von Differential-"$terpri()$
  61. write"gleichungen, Partielle Differentialgleichungen"$terpri()$
  62. write"erster Ordnung, B.G. Teubner, Stuttgart (1979)."$terpri()$
  63. >>$
  64. write"------------------- equation 1.4 ----------------------"$
  65. lisp(depl!*:=nil);
  66. depend z,x,y$
  67. QUASILINPDE( x*df(z,x)-y, z, {x,y})$
  68. write"------------------- equation 2.5 ----------------------"$
  69. lisp(depl!*:=nil);
  70. depend z,x,y$
  71. QUASILINPDE( x**2*df(z,x)+y**2*df(z,y), z, {x,y})$
  72. write"------------------- equation 2.6 ----------------------"$
  73. lisp(depl!*:=nil);
  74. depend z,x,y$
  75. QUASILINPDE( (x**2-y**2)*df(z,x)+2*x*y*df(z,y), z, {x,y})$
  76. write"------------------- equation 2.7 ----------------------"$
  77. lisp(depl!*:=nil);
  78. depend z,x,y$
  79. QUASILINPDE( (a0*x-a1)*df(z,x)+(a0*y-a2)*df(z,y), z, {x,y})$
  80. write"------------------- equation 2.14 ---------------------"$
  81. lisp(depl!*:=nil);
  82. depend z,x,y$
  83. QUASILINPDE( a*df(z,x)+b*df(z,y)-x**2+y**2, z, {x,y})$
  84. write"------------------- equation 2.16 ---------------------"$
  85. lisp(depl!*:=nil);
  86. depend z,x,y$
  87. QUASILINPDE( x*df(z,x)+y*df(z,y)-a*x, z, {x,y})$
  88. write"------------------- equation 2.20 ---------------------"$
  89. lisp(depl!*:=nil);
  90. depend z,x,y$
  91. QUASILINPDE( df(z,x)+df(z,y)-a*z, z, {x,y})$
  92. write"------------------- equation 2.21 ---------------------"$
  93. lisp(depl!*:=nil);
  94. depend z,x,y$
  95. QUASILINPDE( df(z,x)-y*df(z,y)+z, z, {x,y})$
  96. write"------------------- equation 2.22 ---------------------"$
  97. lisp(depl!*:=nil);
  98. depend z,x,y$
  99. QUASILINPDE( 2*df(z,x)-y*df(z,y)+z, z, {x,y})$
  100. write"------------------- equation 2.23 ---------------------"$
  101. lisp(depl!*:=nil);
  102. depend z,x,y$
  103. QUASILINPDE( a*df(z,x)+y*df(z,y)-b*z, z, {x,y})$
  104. write"------------------- equation 2.24 ---------------------"$
  105. lisp(depl!*:=nil);
  106. depend z,x,y$
  107. QUASILINPDE( x*(df(z,x)-df(z,y))-y*df(z,y), z,{x,y})$
  108. write"------------------- equation 2.25 ---------------------"$
  109. lisp(depl!*:=nil);
  110. depend z,x,y$
  111. QUASILINPDE( x*df(z,x)+y*df(z,y)-az, z, {x,y})$
  112. write"------------------- equation 2.26 ---------------------"$
  113. lisp(depl!*:=nil);
  114. depend z,x,y$
  115. QUASILINPDE( x*df(z,x)+y*df(z,y)-z+x**2+y**2-1, z, {x,y})$
  116. write"------------------- equation 2.39 ---------------------"$
  117. lisp(depl!*:=nil);
  118. depend z,x,y$
  119. QUASILINPDE( a*x**2*df(z,x)+b*y**2*df(z,y)-c*z**2, z, {x,y})$
  120. write"------------------- equation 2.40 ---------------------"$
  121. lisp(depl!*:=nil);
  122. depend z,x,y$
  123. QUASILINPDE( x*y**2*df(z,x)+2*y**3*df(z,y)-2*(y*z-x**2)**2, z,
  124. {x,y})$
  125. write"------------------- equation 3.12 ---------------------"$
  126. lisp(depl!*:=nil);
  127. depend w,x,y,z$
  128. QUASILINPDE( x*df(w,x)+(a*x+b*y)*df(w,y)+(c*x+d*y+f*z)*df(w,z), w,
  129. {x,y,z})$
  130. write"------------------------ end --------------------------"$
  131. lisp(depl!*:=nil);
  132. end;