No, no, your work revealed two problems, one of which I fixed in the Addon.  In your new installation you have the new addon.

The problem fixed in the addon was that when pderiv_jcalculus_ called derivsecant_jcalculus_ to approximate a derivative it called it as a monad, which got domain error.

The other problem you found was that the search path associated with u. was modified by the execution of the locative; that is, when Ddot called pderiv_calculus_ that messed up the path so that when u. was defined in base locale it was not found.  That will be fixed in the next beta, due out soon.

When you get the new beta AND update the addon you can see if your old problems are fixed and whether there are any new ones.

Henry Rich

On 9/5/2019 9:16 PM, Ben Gorte wrote:
Hi again,

I just installed j901 on my windows computer at work and now my milage is
much better:


--------------------------------------------------------------------

require 'math/calculus'

Ddot =: pderiv_jcalculus_


JVERSION NB. j901/j64avx/windows Beta-i: commercial/2019/08/29T09:48:23


*: D. 1 (5) NB. 10

*: Ddot 1 (5) NB. ok


*~ D.1 (5)                   NB. 10

*~ Ddot 1 (5) ok


sqr =: *:

sqr D. 1 (5) NB. 10

sqr Ddot 1 (5) NB. value error

sqr f. Ddot 1 (5) NB. this works


esqr =: 3 : 'y*y'

esqr D. 1 (5) NB. 10

esqr Ddot 1 (5) NB. value error

esqr f. Ddot 1 (5) NB. works


(+/ , -/ , */) 7 4

(+/ , -/ , */) D.1 (7 4) NB. 2x3 matrix

(+/ , -/ , */) Ddot 1 (7 4) NB. same (works)

--------------------------------------------------------------------


So the only 'unexpected' thing is about f. , but I guess I'm missing a
point.


Did I mess up my Linux installation? In that case I apologize for the
confusion, but how did I do that? Everything else works fine.


Greetings,

Ben





On Wed, 4 Sep 2019 at 11:38, Ben Gorte <[email protected]> wrote:

I am trying to replace D.1 by Ddot 1, after defining
Ddot =: pderiv_jcalculus_

Here is a script with a number of (different?) problems.
I almost hope I'm doing something stupid that can easily be fixed.
Or just use something else from calculus?

Further down I will also show the results, but it looks very messy.

Thanks,
Ben

--------------------------------------------------------------------

require 'math/calculus'

Ddot =: pderiv_jcalculus_


JVERSION NB. beta-i, linux, avx


*: D. 1 (5) NB. 10

*: Ddot 1 (5) NB. ok


*~ D.1 (5)                   NB. 10

*~ Ddot 1 (5) NB. domain error


sqr =: *:

sqr D. 1 (5) NB. 10

sqr Ddot 1 (5) NB. value error when I type this, but

NB. it works when I run the entire script

sqr f. Ddot 1 (5) NB. this works


esqr =: 3 : 'y*y'

esqr D. 1 (5) NB. 10

esqr Ddot 1 (5) NB. value error or domain error

NB. when I run the entire script

esqr f. Ddot 1 (5) NB. domain error


(+/ , -/ , */) 7 4

(+/ , -/ , */) D.1 (7 4) NB. 2x3 matrix

(+/ , -/ , */) Ddot 1 (7 4) NB. domain error

--------------------------------------------------------------------


When I execute these sentences one by one I get:

--------------------------------------------------------------------

require 'math/calculus'

Ddot =: pderiv_jcalculus_

JVERSION NB. beta-i, linux, avx

Engine: j901/j64avx/linux

Beta-i: commercial/2019-08-29T09:32:08

Library: 9.01.09

Qt IDE: 1.8.1/5.5.1

Platform: Linux 64

Installer: J901 install

InstallPath: /home/ben/j901

Contact: www.jsoftware.com

*: D. 1 (5) NB. 10

10

*: Ddot 1 (5) NB. ok

10

sqr =: *:

sqr D. 1 (5) NB. 10

10

sqr Ddot 1 (5) NB. value error when I type this, but

|value error: sqr

| ufix=.u. f.

NB. works when I run the entire scrips

sqr f. Ddot 1 (5) NB. this works

10

esqr =: 3 : 'y*y'

esqr D. 1 (5) NB. 10

10

esqr Ddot 1 (5) NB. value error or domain error

|value error: esqr

| ufix=.u. f.


  esqr f. Ddot 1 (5) NB. domain error

|domain error

| esqr f.Ddot 1(5)

(+/ , -/ , */) 7 4

11 3 28

(+/ , -/ , */) D.1 (7 4) NB. 2x3 matrix

1 1 4

1 _1 7

(+/ , -/ , */) Ddot 1 (7 4) NB. domain error

|domain error

| (+/,-/,*/)Ddot 1(7 4)

--------------------------------------------------------------------




On Tue, 3 Sep 2019 at 23:25, Henry Rich <[email protected]> wrote:

Yes, that's the way to go.  Report your problems to beta, or fix up the
addon.

D. is temporarily available for comparison purposes but will be removed
from the release.

!^:_1, which relied on D:, has been removed.

Henry Rich

On 9/3/2019 4:48 AM, Ben Gorte wrote:
Hi,

I'm trying to modify my code that uses D. 1 by replacing it with Ddot 1,
after:
Ddot =: pderiv_jcalculus_

Is that roughly the way to go?

JVERSION tells me:

Engine: j901/j64avx/linux

Beta-i: commercial/2019-08-29T09:32:08

Library: 9.01.09

Qt IDE: 1.8.1/5.5.1

Platform: Linux 64

Installer: J901 install

InstallPath: /home/ben/j901

Contact: www.jsoftware.com


I notice that D. is still around, but I'm running into lots of issues
with
Ddot.

Is this the version I should use for this?


Thanks,

Ben


On Tue, 27 Aug 2019 at 11:16, bill lam <[email protected]> wrote:

Addons and labs need to change to use cover adverb and I think it will
work
even better than before because D. can be enhanced much easier if it is
implemented in J scripts.



On Tue, Aug 27, 2019, 9:08 AM Ben Gorte <[email protected]> wrote:

Good morning,

I was in a Geodesy department for many years and am still doing those
kind
of things. Geodesists are the well-known masters of least-squares
adjustment, but not being a geodesist myself, most of my career is
based
on
the Best Fit lab, notably on the (in)famous adverb:

Nwtn =: adverb def 'y - (u y)%.(u D.1 y)'


I guess it's getting time for retirement :-)


Greetings from Sydney,

Ben



On Tue, 27 Aug 2019 at 09:05, Henry Rich <[email protected]>
wrote:
J has supported symbolic differentiation and integration for some
time.
Starting with Release 9.01, primitive support for calculus is
withdrawn.
The calculus primitives were a proof-of-concept that was an
incomplete
success.  They worked, but they were not complete, and the nature of
mathematics is such that they will never be complete.  It has long
been
clear that they should have been implemented in a J script, which
would
be much easier to expand & maintain.

The primitives for Taylor series - t. t: T. - are terminated with
extreme prejudice.

The primitives for differentiation and integration - d. D. D: - are
also
removed, but they are going to a Better Place.  A new addon,
math/calculus, is now available.  It provides most of the features of
the calculus primitives.  Interested users are encouraged to fix &
expand this addon to give support for more methods of integration and
differentiation.

Henry Rich

---
This email has been checked for viruses by AVG.
https://www.avg.com


----------------------------------------------------------------------
For information about J forums see
http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see
http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to