in [HP48]

Prev: HP50g vs. Voyage 200
Next: HPUserEdit crash at launch
From: Steen Schmidt on 3 Sep 2006 04:18 Jean-Yves Avenard wrote: > Steen Schmidt wrote: > > Takes 0.05 seconds on the HP50G. It would be cool if the NSpire > > could be coded in C or C++ for sure, but I believe the OS is too > > limited to realize the full potential of such programming. > Why that? > > You can do C/C++ without any OS if you wanted to. I'm thinking about the integration of the C++ program with the exisiting system. How would you benefit from a faster implementation of the factorial function for instance, when you still can't represent the output of 300! exact when you return from the C++ program? You can do games and such, but when you need to do some data IO with the OS (even a plotter app does that), you're bound by the limitations of the existing OS (data types, argument ranges, file structure etc). Regards Steen
From: Michael Kuyumcu on 3 Sep 2006 05:29 Hi, I just retried "seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,4),j,1,4)^-1", and now it works, except that the calc answers with "Errro: singular matrix" after a second or so. The same error message is given for "seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,3),j,1,3)^-1". Is this a singular matrix? Well, let's see: I evaluated: "seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,3),j,1,3)" (the result was there in a fraction of a second) and then "det(ans)" which yielded "0" So if the determinant determination algorithm works correctly, this indeed is an impossible problem. When I want to find out how long a certain operation takes, can I use any TIMING measuring function? I haven't found anything in the PC software reference guide which claims to be 100% compatible. Do you know of any method? There is no "variable manager", no. "approx(randmat(60,60))" still works, so the mentioned memory limit seems to have been removed. > So it is possible to have as many document as possible, > And within each document it is possible to have as many problems as one > want and one can add up to 4 applications to a problem,right ? Right. I just tested that. Do you happen to know whether there are user-written or commercial packages available for the TI-92 or Voyage series that do multiple-precision math on floating point numbers (like with 900 digits or such) written in machine language? I find it extremely limited that the nspire fails to calculate 300!, and does not support any floats with more than 14 digits (internally up to 17). Booooh! Regards, Michael Kuyumcu Yao Konan schrieb: > Hi Michael, > Michael Kuyumcu a écrit : > > > Hi, > > > > o the taylor series development didn't yield a result after 253 > > minutes, when I cancelled. > > So i think that not only it does use the same algorithm of the > TI92+(which returns a memory error after 50 min) but this alogrithm is > useless on this kind of problem if the TI-NSpire fails with both much > greater speed and much more memory. > > > o randmat(60,60) works > > Sorry,i meant approx(randmat(60,60)) or randmat(120,120) which will > surely exceeds the 32 KB limit. > > > o any integer may not be longer than 614 digits. I find that limit > > downright silly. > > o 300! fails (the nspire responds with "300!"), and 450! fails,too. > > That's very limited. > > It is exactly the same limitations as all calculators of the TI92 > series. > > > > o the (seq...) constructs yields an error message: "Too few arguments" > > Curious i will try to rewrite it: > seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,4),j,1,4)^-1, > But i think that it is better to use the following one: > seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,3),j,1,3)^-1 > as the former has taken over an hour on my TI92+ without completing. > This problem underlines the difficulty that the TI92 series has with > matrix incorporating both complex and square root expressions. > > > > What do you mean by "managing variables" within a document? You can > > define them, undefine them, edit them, redefine them, delete them, view > > their contents. You can have as many notes, graphs, calculators and > > spreadsheets per document as you like. > > I wondered if there was a variable manager availlable for each > document. > However what you wrote is very interesting. > So it is possible to have as many document as possible, > And within each document it is possible to have as many problems as one > want and one can add up to 4 applications to a problem,right ? > > Best regards. > > > Regards, > > Michael Kuyumcu > > > > > > > > > > Yao Konan schrieb: > > > > > Ok i have just a few tests which take a long time or fail on the the > > > TI92 series: > > > 2 speed tests: > > > --------------------------- > > > *taylor(tan(tanh(x))-tanh(tan(x)),x,7) > > > *(seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,4),j,1,4))^-1 > > > > > > A memory test: > > > ---------------------- > > > *randmat(60,60),to see if it can handle algebraic objects bigger than > > > 32 KB > > > > > > Limit of the exact mode for integer: > > > --------------------------------------------------- > > > *300! and 450! > > > > > > I is the imaginary number > > > sqrt stand for the square root function. > > > > > > > > > Btw,you said that one can only save documents,does that mean that one > > > can not manage variables and functions within a document ? > > > Does that also mean that you can save only one note session or > > > spreadsheet or plotting session per document ? > > > > > > Thanks. > > > > > > Michael Kuyumcu a écrit : > > > > > > > No speed tests here, sorry. I think I'm not interested in them. I want > > > > to see if the device meets the curricular requirements for my math > > > > classes. But if you post a few representative timing challenges here, I > > > > will be glad to have them executed :-) > > > > > > > > Regards, > > > > Michael Kuyumcu > > > > > > > >
From: Paul Schlyter on 3 Sep 2006 06:14 In article <xn0eqs3flhsnn000 (a)news.tele.dk>,Steen Schmidt <sschmidt (a)nospam.dk> wrote:>Jean-Yves Avenard wrote: > >> Steen Schmidt wrote: >> > Takes 0.05 seconds on the HP50G. It would be cool if the NSpire >> > could be coded in C or C++ for sure, but I believe the OS is too >> > limited to realize the full potential of such programming. >> Why that? >> >> You can do C/C++ without any OS if you wanted to. > >I'm thinking about the integration of the C++ program with the >exisiting system. How would you benefit from a faster implementation of >the factorial function for instance, when you still can't represent the >output of 300! exact when you return from the C++ program? > >You can do games and such, but when you need to do some data IO with >the OS (even a plotter app does that), you're bound by the limitations >of the existing OS (data types, argument ranges, file structure etc). If you do C/C++ without any OS, you have no such limitations. I mean, in such a situation there is no OS; so how could a non-existent OS limit you? Otoh you won't have any support from the OS either - your program must, by itself, directly talk to any hardware you want to use. If you want to use a harddisk with a file system on it, you're of course bound by that file system if you want to coexist with other files there -- but it's an option, not mandatory. You could just read and write raw sectors from the harddisk if you wanted, or create your own file system. An application which runs, all by itself without any need of OS support, is called a stand-alone application. In the early days of the microcomputer, games or Basic interpreters were often written as stand-alone applications. From the user's point of view, the Basic interpreter *was* the OS of such a computer. >Regards >Steen -- ---------------------------------------------------------------- Paul Schlyter, Grev Turegatan 40, SE-114 38 Stockholm, SWEDEN e-mail: pausch at stockholm dot bostream dot se WWW: http://stjarnhimlen.se/
From: Steen Schmidt on 3 Sep 2006 07:13 Paul Schlyter wrote: > > You can do games and such, but when you need to do some data IO with > > the OS (even a plotter app does that), you're bound by the > > limitations of the existing OS (data types, argument ranges, file > > structure etc). > > If you do C/C++ without any OS, you have no such limitations. I mean, > in such a situation there is no OS; so how could a non-existent OS > limit you? What would you do when you have calculated 10000! ? Would you display the 35660 digits on the screen for the user to decipher one at a time? What if the result was to be used by a subsequent calculation? Or let's say you coded a new symbolic integration engine in C - how would you output the integral of 'Exp(X^2),X'? The result is '1/2*Sqrt(pi)*Erfi(X)', but Erfi(X) isn't defined in the TI AMS. You could code Erfi(X) in C, but the result had to reside temporarily in the TI OS environment, until the user decides to do something else with the result (evaluate it numerically or integrate it again etc.). What object type would Erfi(X) be in this case, inside the TI AMS? The OS (and its aux sw like parsers, type checkers, CAS etc.) limits you in what you can return to it or get as arguments from it. On the HP we have built-in data types for arbitrary precision numbers, arrays of any type etc. There are libraries with support for user-defined functions that behave exactly like built-in functions. This is not the case on the TI - not even on the NSpire. The latter I find disappointing, as it would be a good time to step up from the silly limitations of the TI92/92+/V200/89/89ti series. But TI will probably not do this, as the open structure of the HP OS opens up for a hornets nest of bug possibilities. If you look at how flexible the HP OS is - how much is available for the user - then it's obvious that there's much greater risk of bugs existing therein in comparison with the closed TI OS. All the above is moot of course, in the event you'd want to code your own OS in C/C++. And even in that case, it would probably have to be done over a couple of times, as you'd probably not succeed in putting in all the features another programmer wished for, in which case that other programmer had to code his or her own special OS etc... Regards Steen
From: Yao Konan on 3 Sep 2006 13:00
Hi Michael, Michael Kuyumcu a écrit : > Hi, > > I just retried > "seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,4),j,1,4)^-1", and now it > works, except that the calc answers with "Errro: singular matrix" after > a second or so. The same error message is given for > "seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,3),j,1,3)^-1". Is this a > singular matrix? Well, let's see: > I evaluated: > "seq(seq(1/(sqrt(2*i+1)+I*sqrt(2*j+1)),i,1,3),j,1,3)" > (the result was there in a fraction of a second) > and then > "det(ans)" > which yielded "0" Doesn't seem to look like a singular matrix but my TI92+ fails to compute the determinant after over hour so i cancel the operation.However in approximate mode,it does return a non null complex expressions. > So if the determinant determination algorithm works correctly, this > indeed is an impossible problem. So we could try with a slighty modifier matrix such as: seq(seq(1/(sqrt(2*i+1-I*(3*j+2))),i,1,3),j,1,3) which certainly not singular and which seems to give even more trouble to the TI92+. > When I want to find out how long a certain operation takes, can I use > any TIMING measuring function? I haven't found anything in the PC > software reference guide which claims to be 100% compatible. Do you > know of any method? There is one on the TI89T/Voyage 200. startTmr()->chrono: Computation: checkTmr(chrono) The last instruction will return the timing of the Computation in seconds. However it remains to be seen if it works on the TI-Nspire. > There is no "variable manager", no. So it shouldn't be easy to manage variables within a document. > "approx(randmat(60,60))" still works, > so the mentioned memory limit seems to have been removed. It seems so.That would explain why some operations which returns a memory error on the TI92+ doesn't do the same on the TI-NSpire. > Do you happen to know whether there are user-written or commercial > packages available for the TI-92 or Voyage series that do > multiple-precision math on floating point numbers (like with 900 digits > or such) written in machine language? I find it extremely limited that > the nspire fails to calculate 300!, and does not support any floats > with more than 14 digits (internally up to 17). Booooh! Unfortunately i am not aware of any match package which add arbitrary floating point number as well as virtually unlimited number arithmetic on the TI92 series. All math packages i know deal with the built-in number arithmetic and just add functionnality to the calculators. However if TI want seriously to replace Derive with the TI-NSpire,they will have to remove all these kinds of limitations. > Regards, > Michael Kuyumcu Best regards. |