help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Regarding Standalone Program


From: Jaroslav Hajek
Subject: Re: Regarding Standalone Program
Date: Wed, 30 Jul 2008 13:35:01 +0200

On Wed, Jul 30, 2008 at 1:28 PM, Raghavendra K <address@hidden> wrote:
> Hi,
> Thanks for the reply.
> I am trying to use only expm function. (If I get that working all my
> problems will be resolved).
> When I tried using Matrix:expm(T_a);
> I got this error
>
> test.cc:9: error: no matching function for call to `Matrix::expm(Matrix&)'
> /garl/garl-alpha1/home1/raghu/july1508_matlab/octave/octave-3.0.1/octave/include/octave-3.0.1/octave/dMatrix.h:258:
> error: candidates
>    are: Matrix Matrix::expm() const
>
> What does this mean? ... How can I fix it?
> Please do throw some light.
>


Matrix T_a = something;
T_a = T_a.expm ();

It seems you're not much familiar with C++, right?

> On Wed, Jul 30, 2008 at 4:43 PM, Jaroslav Hajek <address@hidden> wrote:
>>
>> On Wed, Jul 30, 2008 at 10:11 AM, Raghavendra K <address@hidden>
>> wrote:
>> > Hi,
>> >   I am trying to use 2 functions of Octave in my C++ program, they are
>> > zeros and expm
>> > When I was using MatlabI was able to contact the matlab engine from the
>> > C
>> > program using this
>> > ep = engOpen("/usr/local/Matlab/bin/matlab
>> > and then execute any function of matlab like this
>> > engEvalString(ep, "T_a = expm(T_a);");
>> >
>> > Is there any equivalent way of doing this in Octave?
>> > If yes can you please provide some pointers as to how to go about it.
>> > Thanks a lot for your time.
>> >
>>
>> As David suggested, there's no need to use "zeros" - the Matrix
>> constructor will do the trick.
>> Similarly, the Matrix::expm () method will give you the matrix
>> exponential.
>> You *can* evaluate Octave commands from within C++ using eval_string
>> (declared in parse.h). However, as David noted, to use the parser
>> engine you first need to initialize it, and you'll need to transfer
>> the data to and from the symbol table (if you use normal C++
>> variables). Unless you need to call an m-file function, there is
>> normally a more straightforward way that avoids using the parser.
>>
>> > On Wed, Jul 30, 2008 at 1:32 PM, David Bateman
>> > <address@hidden>
>> > wrote:
>> >>
>> >> Raghavendra K wrote:
>> >>>
>> >>> Hi,
>> >>>  I am trying to call octave functions from C, but getting an error.
>> >>> This is the code that I am using
>> >>>
>> >>>     #include <iostream>
>> >>>     #include <octave/oct.h>
>> >>>     int
>> >>>     main (void)
>> >>>     {
>> >>>       std::cout << "Hello Octave world!\n";
>> >>>       int n = 2;
>> >>>       Matrix a_matrix = Matrix (n, n);
>> >>>       a_matrix = zeros(n, n);
>> >>>       std::cout << a_matrix;
>> >>>       return 0;
>> >>>     }
>> >>>
>> >>
>> >> Try
>> >>
>> >> #include <iostream>
>> >> #include <octave/oct.h>
>> >> int
>> >> main (void)
>> >> {
>> >>  std::cout << "Hello Octave world!\n";
>> >>  int n = 2;
>> >>  Matrix a_matrix = Matrix (n, n, 0.);
>> >>  std::cout << a_matrix;
>> >>  return 0;
>> >> }
>> >>
>> >>
>> >> instead. You can't call zeros like that but must use the feval
>> >> function,
>> >> and if you need feval you have to initialize the parser. There are
>> >> threads
>> >> in the mailing list about this..
>> >>
>> >> Regards
>> >> David
>> >>
>> >> --
>> >> David Bateman                                address@hidden
>> >> Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
>> >> Parc
>> >> Les Algorithmes, Commune de St Aubin    +33 6 72 01 06 33 (Mob) 91193
>> >> Gif-Sur-Yvette FRANCE                  +33 1 69 35 77 01 (Fax)
>> >> The information contained in this communication has been classified as:
>> >> [x] General Business Information [ ] Motorola Internal Use Only [ ]
>> >> Motorola Confidential Proprietary
>> >>
>> >
>> >
>> >
>> > --
>> > Regards,
>> > Raghavendra K
>> >
>> > _______________________________________________
>> > Help-octave mailing list
>> > address@hidden
>> > https://www.cae.wisc.edu/mailman/listinfo/help-octave
>> >
>> >
>>
>>
>>
>> --
>> RNDr. Jaroslav Hajek
>> computing expert
>> Aeronautical Research and Test Institute (VZLU)
>> Prague, Czech Republic
>> url: www.highegg.matfyz.cz
>
>
>
> --
> Regards,
> Raghavendra K
>



-- 
RNDr. Jaroslav Hajek
computing expert
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz


reply via email to

[Prev in Thread] Current Thread [Next in Thread]