Previous: Heat equation, Up: Solving problems


3.2.6 Eigenvalue problems

There is some preliminary support for solving eigenvalue problems by Wielandt's iteration. For example, the first eigenvalue of the Laplace operator on a unit square can be approximated with

     (let ((problem (cdr-model-problem 2 :evp (list :lambda (box 20.0)
                                                    :mu (box 1.0)))))
       (defparameter *result*
         (solve (blackboard :problem problem
                            :success-if '(or (>= :time 5) (>= :nr-levels 5))
                            :output 1))))
     (slot-value (getbb *result* :problem) 'lambda)
     (plot (getbb *result* :solution))

Note that the multigrid algorithm has not yet been adapted for eigenvalue problems. Therefore, a sparse decomposition is used for solving the linear systems which does not work for large problems.