octave-maintainers
[Top][All Lists]
Advanced

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

Re: conv.m and MATLAB incompatibility.


From: Robert T. Short
Subject: Re: conv.m and MATLAB incompatibility.
Date: Wed, 15 Jul 2009 11:46:21 -0700
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.22) Gecko/20090606 SeaMonkey/1.1.17

John W. Eaton wrote:
On 28-Jun-2009, Robert T. Short wrote:

| Attached is a patch to conv.m that fixes a MATLAB incompatibility. I | also added a couple of tests. | | Summarizing: if the input vectors are the same length, but one is a row | vector and the other is a column vector, the octave version returns the | correct answer but with a different orientation than MATLAB. In other | words octave will return a row vector when MATLAB returns a column | vector and octave will return a column vector when MATLAB returns a row | vector. | | | WARNING. APPLYING THIS PATCH COULD CAUSE SCRIPT BREAKAGE! | | Scripts that depend on the row/column nature of the result will no | longer work. This might be a good reason not to apply this patch. | Folks (like me) that want MATLAB compatibility can keep this version in | their path.

I checked in this patch but had to make a few additional changes to
allow the tests to run.

You had

  %!test
  %! ...
  %! error conv (...);

but that's a syntax error.  The error directive generates a separate
test, so must be written as

  %!error conv (...);

Also, I think it is probably better to write

  %! assert (conv (...), [...])

instead of

  %! assert (all (conv (...) == [...]))

If you want each assert to count as a separate test, you can write

  %!shared ...
  %! variable definitions..
  %!assert (...)
  %!assert (...)
  %!...

instead of

  %!test
  %! variable definitions...
  %! assert (...)
  %! assert (...)
  %! ...

jwe


Thanks. I copied the structure from the someplace. I will take a look at what you did and and learn.

Is having separate tests important or more of a philosophical nicety?

Bob


reply via email to

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