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

Reply via email to