Open
Conversation
This type of local functions are not supported in Octave (?) Maybe this is a temporary hack so don't re-indent code (this is to keep the diff smaller).
We cannot subclass double, which is causing lots of trouble for "domain" (which is only a very thin wrapper around double).
TEMPORARY workaround for some fight between between subsref and the .domain class property causing infinite loops.
Maybe this is just temporary? I'm sure this is used in other places so hopefully can fix it instead of working around with temp variables like is done here.
On Octave calling fieldnames on a classdef is a warning. Put that case last in chebfun/get so that we don't trigger the warning when accessing more common public properties. I assume this is not recommended OOP practice so probably this is a good change on Matlab too. Or maybe it should raise a warning on Matlab?
This was mostly a thin wrapper around double, but it did have some methods that will probably need to be restored: "validate" and "merge" maybe others...?
Either this needs some workaround in subsref or perhaps its an Octave bug. I think there are subtle differences about how this sort of subsref chaining works b/w Octave and Matlab.
Merged
This reverts commit b5a9a93. It wasn't the correct action to fix the 2*f issue, broke a lot of other behaviours like 'f + 2*f' et cetera.
This reverts commit b1165b5.
This reverts commit 45a8b00.
See bug #67348 (https://savannah.gnu.org/bugs/?67348) for more details.
This reverts commit d1c5725.
This reverts commit 22aac25. Issue was fixed in core Octave (hg id 34756:b12978fb1380) (see https://savannah.gnu.org/bugs/index.php?65179).
test_atan2 passes without error after this change.
Previously, calling `verLessThan('matlab', version)` caused an error on Octave. With this change, querying the `matlab` version will silently query the Octave version on Octave. All invocations of `verLessThan` must be changed to `compatible_verLessThan`.
Octave does not support bvpinit() as of now.
This reverts commit 0232943. Methods inside a classdef .m file that do not belong to the class itself are now supported in Octave.
Octave does not currently support the InferiorClasses attribute, so often two classes with the same method will conflict, and the order of function resolution will be messed up.
Currently, Octave does not declare the whole class to be abstract if a method or a property is abstract, unlike MATLAB, which does even for a single abstract method or property.
The former doesn't exist in Octave, nor can I find official MATLAB documentation for the 'fields' method, but it seems to do the exact same thing as the 'fieldnames' method.
…essThan'. See commit 2a6a136 for details on the reasoning.
…ch function name. Silences an Octave warning.
New PR for property/funciton conflict of 'domain'
cbm755
commented
Aug 10, 2025
Comment on lines
-11
to
17
| %% Scalar-valued, tan(f, g): | ||
| x = chebfun(@(x) x, [a, b], pref); | ||
| f = .5+sin(x).*exp(-.1*x.^2); | ||
| g = cos(x).*(1+x.^2); | ||
| %x = chebfun(@(x) x, [a, b], pref); | ||
| %f = .5+sin(x).*exp(-.1*x.^2); | ||
| f = chebfun('.5+sin(x).*exp(-.1*x.^2)', [a, b]); | ||
|
|
||
| %g = cos(x).*(1+x.^2); | ||
| g = chebfun('cos(x).*(1+x.^2)', [a, b]); | ||
| h = atan2(f, g); |
Owner
Author
There was a problem hiding this comment.
@kolmanthomas what is this about? I gather there is some error about complex values when I try this?
Owner
Author
There was a problem hiding this comment.
I played with this and filed #8 based on what I found so far.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
octave_dev25branch is a target for other pull requests.As of 2025 April, its not intended for merging.