Thanks Ivan, I will try it then. I guess just using the Putzer algorithm. Yeah, I guess I will have to do as you say for the eigendecomposition, and then reconstruct; so that maybe the arpack_solver ( http://www.dealii.org/developer/doxygen/deal.II/arpack__solver_8h.html) is easiest overall? I was sort of hoping for an expm function ;) (lazy) ....
Cheers, Craig On Wed, Mar 23, 2011 at 3:10 PM, Ivan Ivanov <[email protected]> wrote: > Just call it :)) > > You will need: > 1. expm function declaration before the call. Note, Fortran passes all > arguments by their addresses, not values. So an integer parameter is passed > as int *, etc. > 2. actual call to expm() in your code > 3. link your code to lapack, for that add a flag to linker: -l lapack. This > is enough if Lapack is installed with standard paths. > > But I do not see expm subroutine in lapack, is it there? > > If it is not, you can find eigenvectors and eigenvalues as I have already > written before. > > Ivan > > > On 23.03.2011 22:48, pleramorphyllactic wrote: > > Apologies, mis-fire. > > Anyway, So I can solve the system easily using matlab, etc. And so my > question is most clearly: > > How do I compute the exponential of a matrix easily in deal.ii, with the > least amount of fuss (I can't find a function in the documentation that does > this)? > > Or if that's too vague, ... > > How do I go about using the expm subroutine from LAPACK in my deal.ii code? > > Many thanks, > Craig > > > On Wed, Mar 23, 2011 at 2:43 PM, pleramorphyllactic < > [email protected]> wrote: > >> Thanks guys, >> >> I think my wording belies my understanding of the problem somehow. I have >> a very large deal.ii code that solves a highly nonlinear multicomponent PDE, >> and is working quite well. I do know how to do what I need in matlab, and >> a number fo different software. For example, I can exponentiate a matrix in >> LAPACK, though have never h >> >> My question is onl >> >> >> On Wed, Mar 23, 2011 at 2:29 PM, Markus Bürg <[email protected]> wrote: >> >>> Hello Evan, >>> >>> deal.II is a finite element library and does only support the basic >>> linear algebra operations for matrices. Perhabs you want to use MATLAB or >>> some other mathematics package, which already has support for such stuff >>> like matrix exponentials. >>> >>> Best Regards, >>> Markus >>> >>> >>> >>> Am 23.03.11 19:50, schrieb pleramorphyllactic: >>> >>> Hi all, >>> >>> Hope this isn't too simple of a question. I have a coupled system of >>> Linear ODEs, and want to solve in deal.ii. So, >>> say I have >>> >>> x' = Ax, >>> >>> where x is a state vector and A is a matrix. The simple way (that occurs >>> to me) is doing matrix exponentiation, so finding: x = exp(At) * x_{0} . Is >>> matrix exponentiation supported? ... and/or if not, does anyone have an >>> easy/fast way you might approach this issue? >>> >>> Thanks a ton, >>> Evan >>> >>> >>> _______________________________________________ >>> dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii >>> >>> >>> _______________________________________________ >>> dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii >>> >>> >> > > _______________________________________________ > dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii > >
_______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
