D-189 ==== >>Can HP solve this diff. equation numerically? >>y'=-100y+id(-y+10sin(2 pi 50 t))/1e-4 >>and where >>id(vd)=1E-14*(e^(1.609E-19*vd/(1.381E-23*298))-1) >>with the initial condition y(t=0)=0 . >>Run t from 0 to about 0.04 to 0.1, with steps of dt=.0005 to .002 max. >>Vertical axis from -2 (y(t) is always >=0) to 12. > I don't understand your syntax. If you tell me what you punched into the > TI89, I can identify your arguments. > I get this: > y'=F(y,t) - y'=-100*y+(1E-14*(e^(1.609E-19*(-y+10*sin(2*pi*50*t))/(1.381E-23*298))-1))/1 > E-4 > y(0)=0 initial > dt=.0005 > Vertical view: [-2,12] > I don't really get: > Run t from 0 to about 0.04 to 0.1, with steps of dt=.0005 to .002 max. Very well then, here is the more direct approach: FLDOFF t0=0 tmax=.1 tstep=.001 tplot=0 xmin=0 xmax=.1 xscl=0 ymin=-12 ymax=12 yscl=0 ncurves=0 diftol=.001 to .05 and various other tries. I suppose I should have said *Step* t from 0 to 0.04 or to 0.1, with a step size of delta_t of 0.0005 to 0.002. Good luck! -- _ Christopher R. Carlen crobc@earthlink.net ==== > Good luck! I used a delta_t of 0.0005 (200 steps). I thought at first that I could expect a 6-7 hours calculation time, but the graph was complete in only 100 minutes. Pretty violent differential equation, for a calculator, it seems. MathCad 7 (yeah, I know, but it was all I had the patience to fire up ;-) solves and graphs 50000 points (delta_t of 2*10^-6) in around 2.4 seconds. The HP49G should be able to do this (200 points) in maybe 1-3 minutes tops. There's a little challenge for a '49-programmer ;-) ==== >>Good luck! I used a delta_t of 0.0005 (200 steps). I thought at first that I could expect a 6-7 hours calculation time, but the > graph was complete in only 100 minutes. Wow. > Pretty violent differential equation, for a calculator, it seems. MathCad 7 > (yeah, I know, but it was all I had the patience to fire up ;-) solves and > graphs 50000 points (delta_t of 2*10^-6) in around 2.4 seconds. The HP49G > should be able to do this (200 points) in maybe 1-3 minutes tops. There's a > little challenge for a '49-programmer ;-) Yes, and since this is the simplest possible case of the typical EE circuit simulation, it looks like I'll just have to wait until I get a high end PDA running some good math software or the real SPICE to be able to do this sort of thing in the palm of my hand. On the PC, EEs run these sorts of simulations, change parameters, run again, etc., in several second turnaround times. Can't wait for a bunch of minutes, that's for sure. Maybe we can try to get some quantitative benchmarks out now. Can you accurately time say, the 200 point case from t=0 to t=0.1, ie. a delta_t of 0.0005? And mention exactly what hardware and software you're using. I'll post my times: For the equation: y'=-100*y+id(-y+10*sin(314.159*t))/1e-4, y[0]=0 and with the function id(vd)=1E-14*(e^(38.9411*vd)-1) and the TI-89 parameters: FLDOFF t0=0 tmax=.1 tstep=.0005 tplot=0 xmin=0 xmax=.1 xscl=0 ymin=-4 ymax=12 yscl=0 ncurves=0 diftol=.001 I get 370.5 seconds on a TI-89 with 2.08 OS. 380 seconds with diftol=0.0001 Fails to complete with diftol=0.05 it in <= 0.01 seconds using Gear integration and a lot of fussing with accuracy parameters to get it to not overflow/underflow. Good day! -- _ Christopher R. Carlen crobc@earthlink.net ==== I have a small question for those of you that code extensively in SysRPL. >It's a problem I had a long time ago, but I never found a clear solution - >not even by asking here. If I have a simple SysRPL program, say :: >CK1&Dispatch >#1 >%2 %+ >; >#0 >SomethingElse >; >; The above program adds 2 to its argument, if that argument is a real, >otherwise it does something else. That something else I won't to be return >its own program name, with the argument unevaluated. If I call the program >P, the examples below will illustrate what I mean: 2.2 P -> 4.2 >'X^2+3' P -> 'P(X^2+3)' > looking for. Taking your small program as an example, here is the modified version that accepts symbolic input (Jazz syntax) : ASSEMBLE CON(3) 0 RPL xNAME P :: CK1&Dispatch #1 :: %2 %+ ; 10 :: ' :: cknumdsptch1 :: 1GETLAM 1 SYMBN 1 ' xFCNAPPLY 4ROLL #3+ ; ; CODE LASTROMWDOB EQU #807D9 * #80829 for the 49. GOSBVL =SAVPTR D0=(5) LASTROMWDOB A=DAT0 A D0=A D0=D0- 6 A=0 A A=DAT0 X R0=A D0=D0+ 3 A=0 A A=DAT0 B R1=A GOVLNG =Push2#Loop ENDCODE #>ROMPTR >TCOMP EVAL ; ; If the argument is a real then everything works as usual. If it's in the symbolic class ( ID, LAM or SYMB ) then we need to handle it specially. For the symbolic case an explanation of the cknumdsptch1 word is in order. If numeric mode (for functions) is enabled it reduces the object on level 1 to a number (ala ->NUM) and evaluates the second object after cknumdsptch1 . Otherwise, if symbolic mode is enabled it binds the next two objects after cknumdsptch1 to the LAMs xSYMfcn and xfcn respectively, explodes the object on level 1 (if it's a symbolic), evaluates the object bound to xSYMfcn and then rebuilds the symbolic with CKSYMBN. If the object on level 1 is an equation then this process is repeated for both sides. With this knowledge you can probably see how the program works. One detail that might be confusing is the code object. I use this to get the ROMPTR associated with the currently executing library routine so that changes to the order of the library routines or the library ID will be transparent to the program. You can hard code the ROMPTR if you want though. Note: About code that gets bound to xSYMfcn. This creates a symbolic according to the standard representation of a non built-in function application ie. SYMBOL arguments SYMBOL ID function ; numberOfArguments xFCNAPPLY ; One last detail that still needs explaining is the small bit of assembly before the library routine name declaration. This is a property list that defines various attributes of the object that follows it such as if it's allowable in algebraics and many other properties that need not concern us here. All you need to know is that 3 zero nibbles preceding a named library routine is the magic formula for making it allowable in symbolics. >Along the same lines it should be possible to use the program in an >algebraic contents, like this: '5.7+P(4.2)' EVAL -> 11.9 No command in any library I've programmed thus far, will accept such >algebraic containment - for example will 'NINT(1,2,X^2,X)' [ENTER] result in >an Invalid Syntax error, instead of.'NINT(1,2,X^2,X)' on the stack, which >then could be EVALuated to 2.33333333334. The above also takes care of this. How does one go about making library commands act both like commands, but >accept being treated like a function? Exactly like the bulit-in ABS does - >you can enter 'ABS(-X)' in the command line, and return it to the stack with >[ENTER], or you could have -2 on the stack, and merely run ABS (either type >it in or push the left-shifted division-key) and get 2. Does anyone know what I'm rambling on about? > Hope this helps... ---------------------------------------------------------------------------- --- Jonathan Busby - before replying. ==== > ASSEMBLE > CON(3) 0 > RPL > xNAME P > :: I'm not that good at Jazz syntax, but I translate the above to something along the lines of (MASD): CODE CON(3) 0 ENDCODE !RPL :: ... This won't assemble, though.....I must be daft as a brick. Well, I'll look ==== > I'm not that good at Jazz syntax, but I translate the above to something > along the lines of (MASD): CODE > CON(3) 0 > ENDCODE > !RPL You don't need this. The 3 nibbles before are used only to specify that this command (here P) is in fact a function. This is used by the compiler to know if doing something like 'P(value)' will be accepted or will yield a Invalid Syntax error. Unfortunately, I don't think CRLIB or MASD allow you to do such thing, only MAKEROM on the PC will. (I do not know about Jazz) ==== > Unfortunately, I don't think CRLIB or MASD allow you to do such thing, only > MAKEROM on the PC will. (I do not know about Jazz) Arghh!! Nooo! But I want to do it? This is one of the first real limitations I've run into with the HP49G - who can and will fix it? ;-) How about if I change or add those three nibbles after compilation? Can't be done either? ==== > Unfortunately, I don't think CRLIB or MASD allow you to do such thing, > only > MAKEROM on the PC will. (I do not know about Jazz) Arghh!! Nooo! But I want to do it? This is one of the first real limitations I've run into > with the HP49G - who can and will fix it? ;-) How about if I change or add those three nibbles after compilation? Can't be > done either? You have to write your library yourself, so that it can be compiled with ASM, instead of just writing the commands and invoking CRLIB. I have a template somewhere - but I can't find it this instant. Werner ==== > How about if I change or add those three nibbles after compilation? Can't be > done either? adding the three nibbles is quite easy to do by hand just hack the lib with ->H add the three nibbles add three to the length of the lib rebuild the lib with H-> and recalculate the four checksum nibbles at the end I'll write a hacking code that does this tonight in the train so you can do it automatically -- ==== > just hack the lib with ->H > add the three nibbles > add three to the length of the lib > rebuild the lib with H- and recalculate the four checksum nibbles at the end That won't be so easy. By default MASD enters one nibble before the name definition (8) to say it's a command. You need to replace it whith 3 characters. So not only you need to replace a 8 with 000, but then you will have to recalculated all the offsets, plus the checksum. Recalculating the offsets is definitely not a trivial task. If I remember correctly, LIBMAKER v5.0 by Christian Bourgeois allows you to create such library, I don't know if it has been ported to the HP49 (won't be difficult, I did the port for the HP48GX from the HP48SX). Otherwise, you have to build your library *by hand*. In fact, using 000 to say it's a function is only one of the aspect of it. Every single bit of this value has a meaning. If it was a command, the bits are as followed: ASSEMBLE CON(1) (nonALG)+0*(hasHELP)+0*(hasALIAS)+0*(hasPDATA) RPL hNAME xCMDAPPLY ( arg1 ... argN {cmd} #N -> {results} ) :: hasHELP is not used anymore. Here is the source code of NEG: ASSEMBLE **miscdoc+*** *** ** prop_list defining field for an algebraic function **+miscdoc*** *** CON(1) 0*(hasFORM)+0*(hasINTG)+0*(hasWHERE)+0*(hasVUNS) CON(1) 0*(hasDER)+0*(hasINV)+0*(hasCOLCT)+0*(hasEXPND) CON(1) 0*(hasHELP)+(hasPDATA) RPL xNAME NEG NAMELESS xCHS :: CK1&Dispatch ONE ( % ) %CHS zint QNeg ( FLASHPTR ) TWO ( C% ) C%CHS FOUR ( arry ) MATCHS TEN ( sym ) SYMCHS EXT UMCHS hxs bitneg grob NEGgrob seco NEGPICTgrob ; RPL **miscdoc+*** *** ** algebraic function property list elements **+miscdoc*** *** ** help data (if present) ( Textbook data ) * GDATACHS * parse data (if present) ASSEMBLE =CHSpdata CON(5) =DOHSTR REL(5) end2 CON(1) 0 CON(1) pdOP CON(1) pdEX CON(1) 8 (same as * /) end2 RPL * derivative (if present) * D/DCHS * inverse (if present) * INVCHS * COLCT data (if present) * EXPND data (if present) * FORM menu (if present) * MANMENUCSIV * Integral Data (if present) * WHERE Building Data (if present) * very-unsyminner Data (if present) ---- As you can see, you can define how the compiler syntax (RPL) , how OBJ-> is going to work on it. Most of the fields however have no meaning on the HP49 as the CAS and the decompiler now use static table. ==== > That won't be so easy. > By default MASD enters one nibble before the name definition (8) to say it's > a command. > You need to replace it whith 3 characters. So not only you need to replace a 8 with 000, but then you will have to > recalculated all the offsets, plus the checksum. I added 000 after the name and before the body and it works!!! so from 87B4000D9D20... I made 87B4000000D9D20... Why does this also work? I will change my code to do the things you mentioned but for now you can use this. > Recalculating the offsets > is definitely not a trivial task. recalculating is quite easy, I admit that I forgot to mention that in my previous post. you need to change the hash table and the offset to the config object This code takes two arguments: the lib and a real/zint the zint is the id of the rompointer that you want changed into a function so: 2: library 1207 1: 0 changes the first rompointer into a function. the code is sparsely commented but you should be able to read it :: CK1&Dispatch #8F1 :: COERCE CODE GOSBVL POP# % get romptr CLRST R4=A A GOSBVL PopASavptr % get lib R3=A A D0=A D0+5 C=DAT0 A % length of lib C+8 A % add prologue and nullnibs GOSBVL CREATETEMP GONC MEMOK GOVLNG GPMEMERR *MEMOK A=R3 A AD0EX % D0= old lib D1=A % D1= new lib R0=A A A=DAT0 A % copy prologue DAT1=A A D1+5 D0+5 A=DAT0 A A+3 A % add 3 to length DAT1=A A D0+5 D1+5 C=0 A C=DAT0 B % title length ?C=0 A -> NOTITLE C+1 A % add second length field *NOTITLE C+C A C+20 A % copy offsets COPYDN C=DAT0 A C+3 A % config offset DAT1=C A D0+5 D1+5 A=DAT0 A % link prologue DAT1=A A D1+5 D0+5 C=DAT0 A % link length C+5 A % add hash prologue COPYDN C=DAT0 A % hash length DAT1=C A D0+5 D1+5 GOSBVL DIV5 % # of romptrs +1 C-2 A B=C A R1=C A % # of romptrs -1 C=R4 A % func romptr B-C A % numer of romps to be moved -1 A=C A C+C A C+C A C+A A COPYDN % copy offsets *HASH A=DAT0 A A+3 A % add 3 to offset DAT1=A A D0+5 D1+5 B-1 A GONC HASH *OUT LC 00007 COPYDN % copy nibble libid romptr id D0-3 A=DAT0 X % romptr id D0+3 C=R4 A % func romptr ?A#C X -> NULL C=0 A DAT1=C X % add the zeros D1+3 *NULL C=R1 A % last romptr ?A#C X -> LAST ST=1 9 *LAST CD0EX D0=C D=C A GOSBVL SKIPOB C=D A CD0EX C-D A COPYDN % copy romptr body ?ST=0 9 -> OUT C=R3 A CD0EX D0+5 A=DAT0 A D=C A D0=C C=R3 A C+A A C-D A C+1 A COPYDN % copy rest of lib A=R0 A D0=A D0+5 A=DAT0 A A-4 A GOSBVL DoCRC % new crc P=3 DAT0=A WP P=0 GOVLNG GPPushR0Lp ENDCODE ; ; @ -- ==== WOW! there is a bug in the code when the function rompointer is the last one in the lib please use this code instead, it has the bugfix and changes the 8 into three zero's like JYA said. It now also checks if the rompointer id is valid CHECKSUM: #D624h, 272.5 bytes :: CK1&Dispatch #8F1 :: COERCE CODE GOSBVL POP# % get romptr CLRST R4=A A GOSBVL PopASavptr % get lib R3=A A D0=A D0+5 C=DAT0 A % length of lib C+7 A % add prologue and nullnibs GOSBVL CREATETEMP GONC MEMOK GOVLNG GPMEMERR *MEMOK A=R3 A AD0EX % D0= old lib D1=A % D1= new lib R0=A A A=DAT0 A % copy prologue DAT1=A A D1+5 D0+5 A=DAT0 A A+2 A % add 2 to length DAT1=A A D0+5 D1+5 C=0 A C=DAT0 B % title length ?C=0 A -> NOTITLE C+1 A % add second length field *NOTITLE C+C A C+20 A % copy offsets COPYDN C=DAT0 A C+2 A % config offset DAT1=C A D0+5 D1+5 A=DAT0 A % link prologue DAT1=A A D1+5 D0+5 C=DAT0 A % link length C+5 A % add hash prologue COPYDN C=DAT0 A % hash length DAT1=C A D0+5 D1+5 GOSBVL DIV5 % # of romptrs +1 C-2 A B=C A R1=C A % # of romptrs -1 A=R4 A ?A<=C A -> ERR LC 00203 GOVLNG GPErrjmpC *ERR C=R4 A % func romptr B-C A % numer of romps to be moved -1 A=C A C+C A C+C A C+A A COPYDN % copy offsets *HASH A=DAT0 A A+2 A % add 2 to offset DAT1=A A D0+5 D1+5 B-1 A GONC HASH *OUT LC 00007 COPYDN % copy nibble libid romptr id D0-3 A=DAT0 X % romptr id D0+3 C=R4 A % func romptr ?A#C X -> NULL D1-7 C=0 A DAT1=C X % add the zeros D1+3 D0-6 LC 00006 COPYDN *NULL D0-3 A=DAT0 X % romptr id D0+3 C=R1 A % last romptr ?A#C X -> LAST ST=1 9 *LAST CD0EX D0=C D=C A GOSBVL SKIPOB C=D A CD0EX C-D A COPYDN % copy romptr body ?ST=0 9 -> OUT C=R3 A CD0EX D0+5 A=DAT0 A D=C A D0=C C=R3 A C+A A C-D A C+1 A COPYDN % copy rest of lib A=R0 A D0=A D0+5 A=DAT0 A A-4 A GOSBVL DoCRC % new crc P=3 DAT0=A WP P=0 GOVLNG GPPushR0Lp ENDCODE ; ; @ -- ==== > please use this code instead, it has the bugfix and changes the 8 into three > zero's like JYA said. I forgot to mention that the code only works for libs created with CRLIB because it assumes that the config object is at the end of the lib (and present) and it will also fail when there is a $extprg If you want I can fix it. I knew that it seemed too easy :-) -- ==== > I forgot to mention that the code only works for libs created with CRLIB and I found another bug, with hidden rompointers this version fixes it all (hidden rompointers, $extprg, $message) the lib still needs to be build with CRLIB because of the order of the various parts sorry if I caused any TTRM's :: CK2&Dispatch #8F1 :: COERCE CODE GOSBVL POP# % get romptr CLRST R4=A A GOSBVL PopASavptr % get lib R3=A A D0=A D0+5 C=DAT0 A % length of lib C+7 A % add prologue and nullnibs GOSBVL CREATETEMP GONC MEMOK GOVLNG GPMEMERR *MEMOK A=R3 A AD0EX % D0= old lib D1=A % D1= new lib R0=A A A=DAT0 A % copy prologue DAT1=A A D1+5 D0+5 A=DAT0 A A+2 A % add 3 to length DAT1=A A D0+5 D1+5 C=0 A C=DAT0 B % title length ?C=0 A -> NOTITLE C+1 A % add second length field *NOTITLE C+C A C+10 A COPYDN C=DAT0 A ?C=0 A -> MESS ST=1 10 *MESS LC 0000A COPYDN C=DAT0 A ?C=0 A -> NOCONF C+2 A % config offset *NOCONF DAT1=C A D0+5 D1+5 A=DAT0 A LC 0C5D0 ?A#C A -> EXT LC 00010 COPYDN *EXT ?ST=0 10 -> NOMESS C=DAT0 A DAT1=C A D0+5 D1+5 C=DAT0 A COPYDN *NOMESS A=DAT0 A % link prologue DAT1=A A D1+5 D0+5 CD0EX D=C A D0=C C=DAT0 A % link length COPYDN CD0EX B=C A C=D A D0=C D0+85 C=DAT0 A AD0EX C+A A BCEX A D0=C C-B A GOSBVL DIV5 C-1 A R2=C A % # of romptrs -1 C=DAT0 A % hash prologue DAT1=C A D0+5 D1+5 C=DAT0 A % hash length DAT1=C A D0+5 D1+5 GOSBVL DIV5 C-2 A B=C A A=R4 A ?A<=C A -> ERR LC 00203 GOVLNG GPErrjmpC *ERR C=R4 A % func romptr B-C A % numer of romps to be moved -1 A=C A C+C A C+C A C+A A COPYDN % copy offsets *HASH A=DAT0 A A+2 A % add 3 to offset DAT1=A A D0+5 D1+5 B-1 A GONC HASH *OUT LC 00007 COPYDN % copy nibble libid romptr id D0-3 A=DAT0 X % romptr id D0+3 C=R4 A % func romptr ?A#C X -> NULL D1-7 C=0 A DAT1=C X % add the zeros D1+3 D0-6 LC 00006 COPYDN *NULL D0-3 A=DAT0 X % romptr id D0+3 C=R2 A % last romptr ?A#C X -> LAST ST=1 9 *LAST CD0EX D0=C D=C A GOSBVL SKIPOB C=D A CD0EX C-D A COPYDN % copy romptr body ?ST=0 9 -> OUT C=R3 A CD0EX D0+5 A=DAT0 A D=C A D0=C C=R3 A C+A A C-D A C+1 A COPYDN % copy rest of lib A=R0 A D0=A D0+5 A=DAT0 A A-4 A GOSBVL DoCRC % new crc P=3 DAT0=A WP P=0 GOVLNG GPPushR0Lp ENDCODE ; ; @ -- ==== > just hack the lib with ->H > add the three nibbles > add three to the length of the lib > rebuild the lib with H- and recalculate the four checksum nibbles at the end Hmm, I thought the three nibbles belonged to the function, not the library? Do you mean I should search for the proper function in the library Hex-string? > I'll write a hacking code that does this tonight in the train > so you can do it automatically ==== > Hmm, I thought the three nibbles belonged to the function, not the library? you might be right, I'll look into it -- ==== Does anybody have an example of how to code the input from in sysrpl please? MC ==== Yesterday I ordered a HP 49G. It will be here Tuesday the 10th. Did I do a dumb thing ordering a calculator that has been discontinued? If so don't tell me ;) honors class and will hopefully be able to use it well into college, even if there are better calcs out by then. Everyone else and their dog is using a Ti 83-Plus but I've used the 49G emulator a lot and the 83s just drive me nuts! (Does it bug anybody else that you have to hit second and then mode to quit something? Don't you quit a lot more often than you change calculator settings?) ANYWAY...what do I need to do as soon as it gets here and what should I know about it up front? Ryan ==== > Yesterday I ordered a HP 49G. It will be here Tuesday the 10th. Did > I do a dumb thing ordering a calculator that has been discontinued? Heck, no! Lots of old timers still think their 67 or 41 or (insert your particular favorite here) was the BEST calcualtor EVER made....just because it might be discontinued doesn't mean that it will stop working! > honors class and will hopefully be able to use it well into college, > even if there are better calcs out by then. It should be quite usable for the foreseeable future....and it's not overkill if you really use it as a tool to learn your math better and not just as an appliance to to the math for you... Everyone else and their dog is using a Ti 83-Plus but I've used the > 49G emulator a lot and the 83s just drive me nuts! (Does it bug > anybody else that you have to hit second and then mode to quit > something? Don't you quit a lot more often than you change > calculator settings?) > The TI 83 and 89 etc are ok, but I think you will find you will be able to make the 49 do things the TIs can't ANYWAY...what do I need to do as soon as it gets here and what should > I know about it up front? > Get thee to www.hpcalc.org !! (get a cable, update the ROM and then check to see what programs will be useful for your classes....and always, always, Good luck, Roger Metcalf Arlington, Texas, USA ==== > Yesterday I ordered a HP 49G. It will be here Tuesday the 10th. Did > I do a dumb thing ordering a calculator that has been discontinued? If > so don't tell me ;) It has not been discontinued - yet. Eventually every calculator will be. I'm still using my HP-41CX. X > something? Don't you quit a lot more often than you change [ON] cancels in the HP 49G and I think ergonomically you have chosen the best of the best. > ANYWAY...what do I need to do as soon as it gets here and what should > I know about it up front? X Get yourself at least the Vol.I of the Urroz's HP 49G books http://www.engineering.usu.edu/cee/faculty/gurro/myBooks.htm Read this news group regularly and remember to use Google: http://groups.google.com/advanced_group_search?group=comp.sys.hp48 There are a lot of useful programs and documents in the www.hpcalc.org ==== Oh! So that's why... I never used that translucent slide-in cover... Do you know that you have to press from the center in order to let it slide out easily. > > Do I have one of the infamous older Indonesian models? Yes! And I think that only some models have the key paint wearing off. > I discovered what was causing the paint to wear off on some of the > keys (f6 and ENTER) on my HP49. It had to do with taking off and > putting on the darn platic cover! If I am not careful on how I do > this, the edge of the cover rubs on some of the keys with the ones at > the corners of the keyboard being more prone to be hit. Now I try to > take off and insert the cover with the edge of it being slightly at an > upward angle so it stays away from the keys. I you do it slowly it is > easy to see whether you are hitting any keys or not. Santos ==== Ok, I unterstand ... << 1 SEQ piLIST >> piLIST => [MTH] => [LIST] => [piLIST] SEQ => LS [PRG] => [LIST] => [PROC]=> [NXT] => [SEQ] 4: x^2 3: x 2: 1 1: 4 => 1: 576 Toralf >>Are there any reasons why the HP49 don't have this function? > Because Bernard Parisse didn't code it. There have obviously not been too > high a demand for this function, hence it was never introduced. I wanted it, > ;-) - that makes three persons over 2-3 years. I postulate that the symbolic output of the Product function is very very > rarely used - even in school. This means that the short program I provided > earlier will be sufficient 99.99...9% of the time. It can be optimized > heavily for speed, but I don't feel like doing it. You can though, as an > exercise :-) ==== > << 1 SEQ piLIST >> A beautiful sulotion as always from John, albeit a little slower. ==== Yes, JHM hint is beautiful too (and small) but your proposal is also very nice ;-) (and a little faster) - END topic Toralf >><< 1 SEQ piLIST >> > A beautiful sulotion as always from John, albeit a little slower. ==== ==== tayne escribi.97 en el mensaje It seems as I convinced you... but I feel that my answer was hard. I've programmed Casio's and Hp's since 1981 and I really think that RPN is much better than algebraic and formula programming. Good luck in your bids ==== > Or ban cars, because they unfortunately quite often are in the hands of > irresponsible people, who are a huge danger, not only to themselves, but As of today, I would vote that we ban doors as well after one nastily tried to crunch my hand. Obviously, if doors (and probably windows too) didn't exist such accident wouldn't happen. It would also drop the break-in robbery counts by a significant factor as there would be nothing to break anymore to get in. Plastic bags should also be ban, you can suffocate if you put one on top of your head. Sure you usually see signs and notes saying that a plastic bag is not a toy, but how is a 4 years old child going to read the warnings if he can't read ? Baseball bat should be ban, it seems that in the US more and more people (including 13 and 14 year old kids) are using them to beat to death their abusing father. The world is a huge playground for idiots ==== > The world is a huge playground for idiots Yes, and it gets quite dangerous when they decide to do serious work ;-) Greetings, Nick. ==== >Should we ban alcohol because a >few people become alcoholics? >No, banning is rarely the right choice... > I think smoking should be banned... > This way, people who smoke will pay a lot for bad quality cigarettes, so they will > die poorer and younger and at last I'll be able to enjoy a walk without losing a > lung. I don't think we're going to have to ban cigarettes. There was a (by someone who's opinion counts) that a case could be made for the companies to be charged with multiple counts of murder. The premise being that they are now being legally judged responsible and they didn't have any less information 20 years ago and so, legally, they've been continuing to supply a substance that they knew was deadly. Considering there have been 800,000 deaths in Australia alone since 1950 and continue at 50/day, that makes a lot of murder indictments. ==== >Should we ban alcohol because a >few people become alcoholics? Yes, because *I* don't drink > I think smoking should be banned... Yes, because, _I_ don't smoke Games? Yes, because I don't play (that often) Cars? Yes, because I don't own one BUT seriously folks: that is put in to the users upper lip. You may still buy it from Sweden or from tax-free shops on air-ports or on ships They should have done the opposite! Why? Cigar/Cigarette smoke goes to other persons lungs, too. That's the only thing that I would ban and with a reason! Veli-Pekka ==== I took off the batteries for 3 minutes, the time the condensator would go empty and my libraries deleted... However when i put the batteries back in, the calculator wont start :(:( I dont know whats wrong :( Lopez ==== Matthias Lopez schrieb im Newsbeitrag > I took off the batteries for 3 minutes, the time the condensator would > go empty and my libraries deleted... > However when i put the batteries back in, the calculator wont start :(:( > I dont know whats wrong :( > You could use the pinhole reset. For this you have to remove the upper right rubber foot, when looking at the back side of your calc. There's a small hole with a letter 'R' nearby. Take a needle and put it *carefully* into the hole for a short moment. Raymond ==== > Matthias Lopez schrieb im Newsbeitrag > >>I took off the batteries for 3 minutes, the time the condensator would >>go empty and my libraries deleted... >>However when i put the batteries back in, the calculator wont start :(:( >>I dont know whats wrong :( >> You could use the pinhole reset. > For this you have to remove the upper right rubber foot, > when looking at the back side of your calc. > There's a small hole with a letter 'R' nearby. > Take a needle and put it *carefully* into the hole for a short moment. > Raymond Sorry it does not work... Lopez ==== leave the batteries out for an extended period, say even 24 hours. short the + and - together to help drain the charge. It will come back to life ... be sure to understand http://www.anti-matrix.net ==== Baboo schrieb im Newsbeitrag > leave the batteries out for an extended period, say even 24 hours. short the + > and - together to help drain the charge. It will come back to life ... > But be sure NOT to reverse the polarity of the batteries when putting them in. This will damage your calc. For further info on this topic, check out www.hpcalc.org Raymond ==== > Baboo schrieb im Newsbeitrag > >>leave the batteries out for an extended period, say even 24 hours. short the + > >>and - together to help drain the charge. >>It will come back to life ... >> But be sure NOT to reverse the polarity of the batteries when putting them > in. > This will damage your calc. For further info on this topic, check out www.hpcalc.org Raymond Finally got it working. My hands were sweaty so i guess that might have been the problem :) I truly appreciate the help you folks gave me Matthias Lopez ==== There can be ANY number of solutions to this. >How could I use Solve in case like this, in a 48G? Eq: A = B + C > A = 8 > B = 15*sin(377*Y) > C = I would solve it ==== > There can be ANY number of solutions to this. No, there is an infinite number of solutions - not any number. There's only one symbolic solution though: 'C=8-15*SIN(377*Y)'. In a sense we were lucky 'Y' wasn't defined - what a mess to solve it it was ;-) ==== I sit COWrected! No, there is an infinite number of solutions - not any number. ==== Filer1 and Filer2 (all in Filer1.zip) on my site below with an option Zoom on the Z-key for scanning a file whose name starts with a letter to be typed in. The essentials of the Zoom option have been created by Luis Morales, thanks a lot :-). This search option is really useful if a directory or port has many files. It got the name Zoom for mnemotic reason. I would prefer Filer2 with its 2-page appl menu. The 2nd page contains the Transfer-options, in particular a toggling menu key for ASCII/BINARY. As a matter of fact, one should find a balance between the number of active hardkeys and the number of menu pages. I hope that Filer2 realizes the right balance. Have fun, Wolfgang ftp://ftp.math.fu-berlin.de/pub/usr/raut/HP49/tools PS. Since I have got no working 49 at present, I used the MASD PC-tools. This took me 3x more time than I'd have needed on the HP49 :-) I felt like Beethoven when he - already completely deaf - composed his famous string quartet op. 135 Muss es sein? (Must it be?). The only way to get satisfaction from a creation in such a situation is to *imagine* how other people might be pleased. I'm in a better situation than was Beethoven since I may still read whether you're please or not; the mentioned opus 135 was published only in 1827, after Beethoven's death ... ==== thanks a lot for this. Your composition sounds beautifull ;-). Great work. Best wishes, Walter > Filer1 and Filer2 (all in Filer1.zip) on my site below > with an option Zoom on the Z-key for scanning a file > whose name starts with a letter to be typed in. The > essentials of the Zoom option have been created by > Luis Morales, thanks a lot :-). This search option is > really useful if a directory or port has many files. > It got the name Zoom for mnemotic reason. I would prefer Filer2 with its 2-page appl menu. The > 2nd page contains the Transfer-options, in particular > a toggling menu key for ASCII/BINARY. As a matter of > fact, one should find a balance between the number of > active hardkeys and the number of menu pages. I hope > that Filer2 realizes the right balance. Have fun, Wolfgang > ftp://ftp.math.fu-berlin.de/pub/usr/raut/HP49/tools PS. Since I have got no working 49 at present, I used > the MASD PC-tools. This took me 3x more time than I'd > have needed on the HP49 :-) I felt like Beethoven when > he - already completely deaf - composed his famous string > quartet op. 135 Muss es sein? (Must it be?). The only > way to get satisfaction from a creation in such a situation > is to *imagine* how other people might be pleased. I'm in a > better situation than was Beethoven since I may still read > whether you're please or not; the mentioned opus 135 was > published only in 1827, after Beethoven's death ... ==== > thanks a lot for this. Your composition sounds beautifull ;-). Great work. Filer1/2 have been updated to v. 12.2002, probably the final version before ROM 19-7 (in which several features of Filer1/2 will be built-in). Filer2 has on menu-page 2 a new transfer option. The ASCII/BINARY toggler has been replaced by the option IOP? (are IO-parameters OK?) which sets a menu for toggling all relevant IO-parameters - what is normally done with 106 MENU or by the 49-TRANSFER screen. But the IOP?-menu makes this setting much faster. Ideal for people who like fast data transfer and seldom use the time-consuming Connectivity Kit. Ideal also for data exchange between two calculators. ftp://ftp.math.fu-berlin.de/pub/usr/raut/HP49/tools PS. What I'm particularly interested in is JHM's opinion on Filer2. All of what he was dreaming of is realized ... ==== permission? > ftp://ftp.math.fu-berlin.de/pub/usr/raut/HP49/tools ==== > permission? > ftp://ftp.math.fu-berlin.de/pub/usr/raut/HP49/tools Nothing forbidden, should run ! PS. There is a new OT49-version on my site. The only change is that the BZ-toggler ~ got still more power. It looks whether a code object is already compressed and decodes it appropriately. For instance, ACC can now be decoded by everybody. Jurjen Bos and I agreed that's time now to reveal the secret :-) Reply-To: peter@dutw1479.wbmt.tudelft.nl ==== > PS. There is a new OT49-version on my site. The only > change is that the BZ-toggler ~ got still more power. No new LibEx in D<-->L ? For people that want LibEx 4.2; you can download it at: http://www.ahd.tudelft.nl/~peter It converts directly from port memory, and has the option not to rename rompointers to variables. -- ==== > thanks a lot for this. Your composition sounds beautifull ;-). Great work. Filer1 has been updated again, to include also XRECV as an option. This waits for input of one or several new names for receiving via XMODEM. More convenient than doing it on the time-devouring TRANSFER screen. The V-key displays besides ROM and CAS version also the current filer version which is 11.2002 meanwhile. Note that the filers have still 1.2 KB only :-) Have fun Wolfgang PS. In ROM 19-7, the ability of Filer1/2 of directly driving into the ports by pressing 0,1,2 will be built in. Searching for a name will be realized by setting a special SEARCH environement with active alpha key. This has its advantages but also disadvantages, compared with the simple search-management in Filer1/2 - one may forget to hit the alpha key for leaving this environement in time and has to start the search again ... ==== I have one question: How can I become a member of this newsgroup? As I have no experience with the use of newsgroups it would be nice if somebody helped me with some information ! Best wishes Bernd Bernsteiner ==== I have one question: How can I become a member of this newsgroup? > As I have no experience with the use of newsgroups it would be nice if > somebody helped me with some information ! Best wishes Bernd Bernsteiner > Welcome! You've found your way to the newsgroup and that's the hardest part! This group is not a private list where you must request to be put on it--just come on back from time to time to see what's going on. The list is populated by a bunch of very nice and very helpful folks... Roger Metcalf Arlington, Texas, USA (in the shadow of the giant TI world headquarters) ==== I hope, your HP-Calculator helps you bringing some light over the shadow of the TI-Headquarter building ! ;-)) Bernd Roger D Metcalf DDS schrieb im Newsbeitrag > I have one question: How can I become a member of this newsgroup? > As I have no experience with the use of newsgroups it would be nice if > somebody helped me with some information ! Best wishes Bernd Bernsteiner Welcome! You've found your way to the newsgroup and that's the hardest > part! This group is not a private list where you must request to be put > on it--just come on back from time to time to see what's going on. The list > is populated by a bunch of very nice and very helpful folks... Roger Metcalf > Arlington, Texas, USA > (in the shadow of the giant TI world headquarters) ==== I have one question: How can I become a member of this newsgroup? > As I have no experience with the use of newsgroups it would be nice if > somebody helped me with some information ! Best wishes Bernd Bernsteiner Welcome! You've found your way to the newsgroup and that's the hardest > part! This group is not a private list where you must request to be put > on it--just come on back from time to time to see what's going on. The list > is populated by a bunch of very nice and very helpful folks... Roger Metcalf > Arlington, Texas, USA > (in the shadow of the giant TI world headquarters) Hey just curious, what do you use your hp49 for? Calculating amounts of enamel to apply to teeth? Nitrous oxide mixing ratios? I use mine for calculus, but i am sure you don't use yours to scrape calculus from teeth? No wonder your screen is all scratched up!!;) ==== > EV41 emulator: http://www.hp41.org > GNU EMU48 (supports all graphical calculators from HP): > http://personales.ya.com/leobueno/ > There are other simple calculators that support RPN for WINCE, it's > the case of CoolCalc 'm having trouble with this. Perhpas I should have been more clear. I have a 320LX with WinCE 1.0, one with WinCE 2.0, a jornada 720, and access to a 680. None of these are Pocket PC Windows machines. This is dificult to explain. The machines I mention all have Keyboards and long horizontal, short vertical displays. Many bits of code made to run on Pocket PC machines will work on Handheld PC machines. I am trying, perhaps I will get one of these to function properly. > There are many other FreeWare RPN calculators available, you can > search at http://ppcf.mklabs.com/ or in any one of the usual places. Paulo Pinheiro >> Heyo- >> >> I'm looking for any sort of programmable RPN emulator (15c, 41series, >> 32sii, anything) for windows CE machines. >> Specifically, wince 1.0 on 320LX, wince 2.0 on 320LX, wince 2.11 on >> Jornada 6xx, and Windows CE 2000 on Jornada 720. -- while E <> ==== OK, I really don't know much about the differences between HPC and PPC, because some times the programs work in both machines. The program EMU48 works in WinCE >=2.0, because it runs 'perfectly' in a Compaq C-800 (MIPS, WinCE 2.0), and applying an horizontal skin it fits quite well in that display, letting you run HP48/49/38,... http://personales.ya.com/leobueno/ So it should be no problem with the Jornada 720 There are XPander http://www.saltire.com/xpander.html but I think it is PPC only even if it runs in MIPS and SH3. You have CoolCalc http://www.applian.com/hpc/CoolCalc/ that works in HPC too, don't know if is programmable, Paulo Pinheiro > EV41 emulator: http://www.hp41.org > GNU EMU48 (supports all graphical calculators from HP): > http://personales.ya.com/leobueno/ > There are other simple calculators that support RPN for WINCE, it's > the case of CoolCalc > 'm having trouble with this. Perhpas I should have been more clear. I have a 320LX with WinCE 1.0, one with WinCE 2.0, a jornada 720, and > access to a 680. None of these are Pocket PC Windows machines. This is > dificult to explain. The machines I mention all have Keyboards and long > horizontal, short vertical displays. Many bits of code made to run on > Pocket PC machines will work on Handheld PC machines. I am trying, perhaps > I will get one of these to function properly. > There are many other FreeWare RPN calculators available, you can > search at http://ppcf.mklabs.com/ or in any one of the usual places. > Paulo Pinheiro >> Heyo- > I'm looking for any sort of programmable RPN emulator (15c, 41series, >> 32sii, anything) for windows CE machines. >> Specifically, wince 1.0 on 320LX, wince 2.0 on 320LX, wince 2.11 on >> Jornada 6xx, and Windows CE 2000 on Jornada 720. ==== Or use Calc 98 get it at http://www.calculator.org/download.html it can do RPN and it runs on Windows 9x,NT,2k,XP and PPC JP > OK, I really don't know much about the differences between HPC and > PPC, because some times the programs work in both machines. The program EMU48 works in WinCE >=2.0, because it runs 'perfectly' in > a Compaq C-800 (MIPS, WinCE 2.0), and applying an horizontal skin it > fits quite well in that display, letting you run HP48/49/38,... > http://personales.ya.com/leobueno/ So it should be no problem with the > Jornada 720 There are XPander http://www.saltire.com/xpander.html but I think it > is PPC only even if it runs in MIPS and SH3. You have CoolCalc http://www.applian.com/hpc/CoolCalc/ that works in > HPC too, don't know if is programmable, Paulo Pinheiro > EV41 emulator: http://www.hp41.org > > GNU EMU48 (supports all graphical calculators from HP): > > http://personales.ya.com/leobueno/ > > There are other simple calculators that support RPN for WINCE, it's > > the case of CoolCalc > 'm having trouble with this. Perhpas I should have been more clear. I have a 320LX with WinCE 1.0, one with WinCE 2.0, a jornada 720, and > access to a 680. None of these are Pocket PC Windows machines. This is > dificult to explain. The machines I mention all have Keyboards and long > horizontal, short vertical displays. Many bits of code made to run on > Pocket PC machines will work on Handheld PC machines. I am trying, perhaps > I will get one of these to function properly. > > There are many other FreeWare RPN calculators available, you can > > search at http://ppcf.mklabs.com/ or in any one of the usual places. > > Paulo Pinheiro > >> Heyo- > > >> I'm looking for any sort of programmable RPN emulator (15c, 41series, > >> 32sii, anything) for windows CE machines. > >> Specifically, wince 1.0 on 320LX, wince 2.0 on 320LX, wince 2.11 on > >> Jornada 6xx, and Windows CE 2000 on Jornada 720. > ==== I have an HP48G+. How do I make custom units? Can't find anything informative. Example: 1_p = 1 x 10^-12 (pico) or .000000000001 so that I can convert for instance, 32.4_M ohms -> 32,400,000,000,000 p ohms. ==== ~Chris ==== Yoda escribi.97 en el mensaje ~Chris > ....and if you want create your own units menus, use Unitman from Wolfgang Rautenberg. www.hpcalc.org ftp://ftp.math.fu-berlin.de/pub/usr/raut/hp48/tools/ ==== > How do I make custom units? Example: > 1_p = 1 x 10^-12 (pico) or .000000000001 > so that I can convert for instance, > 32.4_M ohms -> 32,400,000,000,000 pico ohms pico [p] is a built-in unit prefix, which can be applied to any other unit. You can directly convert to any desired particular output units using CONVERT, e.g. (note that GW represents the ohms symbol): 32.4_GW 1_pGW CONVERT You can also put desired units into a custom menu; e.g.: { 1_GW 1_kGW 1_MGW 1_pGW } MENU This menu allows you to create a value using one of the unit prefixes, then convert it to use one of the other prefixes (unshifted unit menu keys perform multiplication, left-shifted unit menu keys perform conversion, right-shifted unit menu keys perform division). If you want a general program to adjust *any* unit expression, so as to vary the unit prefix over all possible values, much like the ENG key on some Casio calculators, try these: HP48 versions: http://hpcalc.org/hp48/math/misc/casioeng.zip http://hpcalc.org/hp48/math/misc/unitscal.zip http://groups.google.com/groups?selm=5h3fqg%24624%241%40news.iastate.edu http://groups.google.com/groups?selm=60rcjc%246vs%241%40news.iastate.edu HP49 versions: http://groups.google.com/groups?selm=3AB1F809.2FA3EB44%40miu.edu ------------------ http://www.mum.edu . ==== > If you want a general program to adjust *any* unit expression, > so as to vary the unit prefix over all possible values, > much like the ENG key on some Casio calculators, try these: HP49 versions: > http://groups.google.com/groups?selm=3AB1F809.2FA3EB44%40miu.edu also take a look at UTOOL 2.8 http://www.hpcalc.org/details.php?id=4612 The best thing for units IMHO. from the docs: This library provides tools to deal with units. It contains - A tool for fast interactive access to your favorite units, without having to dig through the multi-page unit menu. I don't think there is a more efficient way to work with UNITS on the HP49G or any other calculator. - USIMP, a configurable inverse UBASE command. - Commands to compute with non-SI base units (Planck, cgs,...) Also included are re-implementations of the most useful HP48 utilities: - Jack Levy's MUC. - John H. Meyers' UM, U1, U2, ENG->, and ENG<- - Matt Austern's unit converter for high-energy physics. -- ==== > How do I make custom units? Can't find anything informative. > Example: > 1_p = 1 x 10^-12 (pico) or .000000000001 so that I can convert for instance, 32.4_M ohms -> 32,400,000,000,000 p > ohms. Well, if you only mean prefixes, you just do 32.4_MOhm 1_pOhm CONVERT -> 3.24E19_pOhm. The HP4x series of calculators support these prefixes (page 10-5 in your manual): Prefix / Name / Exponent: Y / yotta / +24 Z / zetta / +21 E / exa / +18 P / peta / +15 T / tera / +12 G / giga / +9 M / mega / +6 k or K / kilo / +3 h or H / hecto / +2 D / deka / +1 d / deci / -1 c / centi / -2 m / milli / -3 u (the greek letter) / micro / -6 n / nano / -9 p / pico / -12 f / femto / -15 a / atto / -18 z / zepto / -21 y / yocto / -24 You cannot use prefixes if the resulting unit matches another built-in unit. Matches: min, Pa, da, cd, ph, flam, nmi, mph, kph, ct, pt, ft, au, cu, yd & yr. If you run into making custom units (like _yd^3/cm*W or _bytes), or the above prefixes aren't enough, write again. Before writing, look into the unit 1_?. Also see if you can find these units somewhere in the calculator: _rpm, _dB, _gmol & _lbmol ;-)). ==== BTW, I am meaning specifically SI units kinda like how it is done here http://www.ex.ac.uk/cimt/dictunit/ccprefix.htm > I have an HP48G+. > How do I make custom units? Can't find anything informative. Example: 1_p = 1 x 10^-12 (pico) or .000000000001 so that I can convert for instance, 32.4_M ohms -> 32,400,000,000,000 p > ohms. ==== I was wondering what mathematical meaning non-integer limits in summations (and product functions for that matter) have? In the next paragraph, S is the (Sigma) summation function, and P is the (capital Pi) Product function: You can evaluate S(X=1/2,3/4,X^2) on the HP49G (-> '35/64'), and you can evaluate P(SIN(X),X,1/2,3/4) on the TI89 (-> 'SIN(1/2)'). I imagine the calcs merely calculate the symbolic formula for the summation and multiplication with arbitrary limits, and then simply plop in the given limits. What mathematical meaning does this have? ==== I would have to say it makes absolutely no mathematical sense to have non-integer limits in a summation. Summations are discrete functions and it only makes sense (at least to me) to use discrete or integer limits. Aaron I was wondering what mathematical meaning non-integer limits in summations > (and product functions for that matter) have? In the next paragraph, S is the (Sigma) summation function, and P is the > (capital Pi) Product function: You can evaluate S(X=1/2,3/4,X^2) on the HP49G (-> '35/64'), and you can > evaluate P(SIN(X),X,1/2,3/4) on the TI89 (-> 'SIN(1/2)'). I imagine the > calcs merely calculate the symbolic formula for the summation and > multiplication with arbitrary limits, and then simply plop in the given > limits. What mathematical meaning does this have? > ==== Aaron said: > it makes absolutely no mathematical sense to have non-integer limits > in discrete functions and it only makes sense (at least to me) > to use discrete or integer limits. But we are all familiar with other things which were introduced to us as discrete definitions, yet which, with a little expansion of perspective, we can also understand as continuous. Exponents, for example -- when first we define an exponent as how many times we repeat a factor, it seems to make no sense to ask what x^(3/4) might mean, but we all know that it does represent something which is quite well defined, which we now accept just as much as the more primitive concept with which we began our earlier understanding. Similarly, the initial, simple definition of factorials is discrete, but the very same thing, relabeled as Gamma function, has a precise meaning for non-integers as well. The sum of the first N integers is known to be N*(N+1)/2; now, this formula has a defined value for any N, so why not then define the sum Sigma(N), limits A to B, as the difference between two values of that formula, evaluated at A-1 and at B, for any values of A and B? And how about the idea of number, which, when we can only imagine a one-dimensional meaning, leads to many difficult or insoluble problems, yet when we expand our understanding to admit two dimensions (complex numbers), it becomes extraordinarily powerful and complete. In much the same way, other concepts which at first may be summarily rejected by those who have not yet expanded their awareness and gained more experience and perspective are completely clear and obvious to those who have learned more and actually experienced them. Knowledge is structured in consciousness [our university motto] http://www.mum.edu . ==== I'm going to have to disagree with you here. It still makes no mathematical sense to use non-integer limits on a summation whose only purpose in life is to sum discrete elements with discrete indicies. If there is a way that you can expand the meaning of a summation by using non-integer limits, then you dont have a summation anymore but an entirely different function. In the example of an exponent, that is different because we can use algebra to prove how non-integers in the exponent work and make mathematical sense. It makes mathematical sense to have a real or imaginary number in the exponent. It does not make mathematical sense to reference the i_th object in a sequence for instance when i=3.2. I understand that you can make unique results with only using the index as a direct argument in the sum, but as I just mentioned, what sense does it make to reference a fractional element in a sequence whose elements are only (sensibly) defined by integers? If I gave someone 2 sequences and asked them to perform a discrete-time convolution from N=0 to N=11.5, they would look at me like I had lost my senses! Aaron > Aaron said: it makes absolutely no mathematical sense to have non-integer limits > in discrete functions and it only makes sense (at least to me) > to use discrete or integer limits. But we are all familiar with other things which were introduced > to us as discrete definitions, yet which, with a little expansion > of perspective, we can also understand as continuous. Exponents, for example -- when first we define an exponent > as how many times we repeat a factor, it seems to make > no sense to ask what x^(3/4) might mean, > but we all know that it does represent something > which is quite well defined, which we now accept > just as much as the more primitive concept with which > we began our earlier understanding. Similarly, the initial, simple definition of factorials > is discrete, but the very same thing, relabeled as > Gamma function, has a precise meaning for non-integers as well. The sum of the first N integers is known to be N*(N+1)/2; > now, this formula has a defined value for any N, > so why not then define the sum Sigma(N), limits A to B, > as the difference between two values of that formula, > evaluated at A-1 and at B, for any values of A and B? And how about the idea of number, which, when we can only > imagine a one-dimensional meaning, leads to many difficult > or insoluble problems, yet when we expand our understanding > to admit two dimensions (complex numbers), it becomes > extraordinarily powerful and complete. In much the same way, other concepts which at first may be summarily > rejected by those who have not yet expanded their awareness > and gained more experience and perspective are completely > clear and obvious to those who have learned more > and actually experienced them. ==== > It still makes no mathematical sense to use non-integer limits > on a summation whose only purpose in life is to sum > discrete elements with discrete indicies. > If there is a way that you can expand the meaning of a summation > by using non-integer limits, then you don't have a summation anymore > but an entirely different function. As the Churkendoose said, It depends on how you look at things. http://www.humanistsofutah.org/1994/AnnaHoagland_Journey-8-94.html http://www.oiquarterly.org/vol02/num3/vol02-3-01.htm http://home.bluemarble.net/~fumcb/sermons/010826.htm In the MTH PROB menu (13 MENU), you'll find a ! [factorial] menu key. Enter 3 and press it, and you'll get a result of 6; enter 4 and press it, and you'll get a result of 24; enter 5 and press it, and you'll get a result of 120. Well, is that the factorial function, or not? Now enter 0.5 and press it, and you'll get a result equal to the square root of pi/4. Hmm... Does the fact that it delivers results for values *between* integers mean that it isn't the factorial function at all, but an entirely different function? For every positive integer argument, the result is identical to the value of that integer's factorial, so in this light, you can not distinguish it from the factorial function, even though its internal method of calculation may or may not be to walk through the literal original definition. It *is* the factorial function, regardless of what algorithm it uses to get its result, much the same as the COS trig function is the cosine function, even though it does not actually construct a right triangle inside the calculator and go measure it (if that was your original definition); there are many equivalent definitions, some more general than others, which work equally well for computing cosines, and if the calculator contains an algorithm which accepts input angles which are greater than any possible angle in a right triangle, does that mean that it isn't really the cosine function, after all, but an entirely different function? If it's a different function, its only difference is that its domain is expanded, by the realization that what we had intially thought of as a definition of such a function is really only a special case of something more general, which in turn includes every original special case, with exactly the same value. Bucky Fuller used to lecture that what we call square numbers really have nothing to do with squares; he'd say that you could just as well call them triangular numbers, because if you make a row of one object, then a second row of three objects, then a row of five, then seven, etc., building up larger and larger triangles from these increasingly longer rows, you'll get exactly the same numbers of objects in this sequence of *triangles* as what you'd been calling squares. It's a kind of prejudice to say that the first thing we think of is the only way to think, or that our first experiences or learning of anything are the only reality, but that's the sort of prejudice which holds society back from expanding and developing its consciousness. Bucky said that the mind was that aspect of ourselves which generalizes our particular special-case experiences, and that this non-material, abstract factor of intelligence is what organizes the material aspect of the entire universe (including the material of our own brain). So did Einstein, I would say, from all the quotations I've read of him. And so did many others of the most visionary people in history. > In the example of an exponent, that is different, > because we can use algebra to prove how non-integers > in the exponent work and make mathematical sense. I suggest to you that the only difference is that you have had more experience developing your awareness of how this one aspect of a mathematical pattern can be generalized, while the other aspect is merely new to you and unexplored, but that each is equally valid (or invalid) in the end, and will make complete sense once experience catches up. But people tend to reject things based solely on lack of experience, rather than to be open to exploring and acquiring the more comprehensive experience. In 30-40 years of experience of teaching here, we all experience how we can in fact have our mind order both the mental and physical world within and around us, just as Bucky said, projecting a peaceful, productive, happy and supportive world, both in our own personal awareness and also to others, within the radius of its effect, depending on how many people experience a coherent state at one time. People who've never had the experience argue against it; people who have simply know that it is so. I hope that everyone finally makes it into the latter category, in time for most of the world to still remain undestroyed. http://www.mum.edu . ==== > In the MTH PROB menu (13 MENU), you'll find a ! [factorial] menu key. Enter 3 and press it, and you'll get a result of 6; > enter 4 and press it, and you'll get a result of 24; > enter 5 and press it, and you'll get a result of 120. Well, is that the factorial function, or not? Now enter 0.5 and press it, and you'll get a result > equal to the square root of pi/4. Hmm... Does the fact that it delivers results for > values *between* integers mean that it isn't the factorial > function at all, but an entirely different function? Ahh, John - you walked right into it ;-) Let me quote the HP 48G Series Advanced User's Reference Manual, page 3-412: !, Factorial (Gamma) Function: Returns the factorial n! of a positive integer argument n, or the gamma function G(x+1) of a non-integer argument x. With G I of course mean the greek letter capital gamma. Well, John. The ! function on the HP calculators is the factorial function for integer arguments ONLY, and the gamma function for everything else - hence it is indeed two different functions, merely with that interesting property, that they combined make a continous function. I do, however, understand the arguments made of continuity regarding summation, but the ! function was probably not the best example ;-)) ==== > HP 48G Series Advanced User's Reference Manual, page 3-412: > !, Factorial (Gamma) Function: Returns the factorial n! of positive > integer argument n, or the gamma function G(x+1) of a non-integer > hence it is indeed two different functions No more different than if I say that *this* man is George W Bush, while *that* man is the President of the United States, so they are really two different people, so long as I use two different descriptions or definitions. The function in fact returns G(x+1) for *all* arguments, since n! and G(n+1) are identically equal. Or, if we care to simply generalize our perception of n! so that we recognize its domain as all reals instead of only positive integers, then the function returns the generalized x! for all x. This argument seems to hinge on you and Aaron considering that functions are different if they use different algorithms, or even different definitions, while I consider that they are the same if they produce the same results. Under the first idea, there are even multiple SIN and COS functions, (or EXP[M] LN[P1]), because the internal algorithms themselves change, according to both the type and range of the input argument, and further, since none of the internal CORDIC algorithms even resembles a fundamental definition of these mathematical functions, not a one of these is actually the real McCoy, but all are imposters! The second approach is in the direction of generalizing what we know as our experience and perspective broadens, creating a deeper unity in our consciousness, a general theme of Bucky Fuller and others, indeed a hallmark of our educational process, of which I sought to use this as an example. I call upon Shakespeare as my final witness: A Rose by any other name would smell as sweet. ;-) Best wishes from http://www.mum.edu . ==== > Are you suggesting that just because the machine > returns a result for both integers and non-integers, > that it is using the same algorithm inside? No; wasn't I explicit about this? > They *aren't* the same algorithm but, as I said, > an entirely different function. This would be true, if you characterize a calculator function by how it gets the answer, rather than by what answers it produces, the way that satirist and math professor Tom Lehrer once said that an educational program called New Math meant that we wanted to understand what we're doing, rather than get the right answer http://members.aol.com/quentncree/lehrer/newmath.htm It was said that Johann Karl Friedrich Gauss' teacher once asked him to add up the first 100 positive integers, but instead, Gauss recognized a shortcut, and got the answer in a few moments: http://www-gap.dcs.st-and.ac.uk/~history/Mathematicians/Gauss.html Would Gauss' teacher have been correct to claim that this was wrong, because Gauss was using an entirely different function than direct summation? Or was Gauss correct, because he generalized and got the formula for the sum, using his mind to discover a more generalized function, which even covers a wider domain? The algorithms in the calculator very frequently bear no resemblance to any textbook's mathematical definition of the functions, anyway, particularly the CORDIC algorithms which produce answers for numeric trig and logarithm functions and their inverses; it could hardly be otherwise, because some theoretical definitions of trig functions (as ratios of sides in triangles having given angles) provide no means at all for direct computation, while other definitions (such as the sum of infinite sequences) could take infinitely long to evaluate; therefore, practical and fast numerical recipes are used, their only goal being to get the right answers fast, rather than to have anything to do with mathematical definitions. The results, however, are those which should be produced, hence we could well regard those buttons labeled COS, ALOG etc. as being the functions that they claim to be, because they deliver the answers that those functions should. When a student first plays around with these functions, after learning his first definitions of them, however, he might try, e.g., FACT(1.5) and notice that an unexpected answer appears. Should he then say hey, this must be an entirely different function, or can we say instead that it is really the same function, just generalized to have a more complete meaning, over a greater domain, based on deeper insight? To get to the bottom line, if there are actually several alternate ways to define a function, all of which turn out to give the same results, are we not at liberty to use these definitions interchangeably, as long as the results are equivalent? If, among these alternatives, one provides a meaning for a domain of inputs which includes more inputs which the others leave out, can we not regard it as a generalization of all the more special-case instances? Our calculator is evidently as wily as was Gauss, for it would appear that it also knows some formulas for the sums of some particular sequences, just as it might know the formulas for some particular integrals, and thus be able to save itself some work, as well as at the same time creating an automatic generalization of the summation function (I never did try fashioning a definition to match these outputs, but surely someone else's imaginative mind may be able do so). My real goal, in any event, was to try to give examples for the great insight of Bucky Fuller, whose theme is always that our special-case experiences can be generalized by our mind (consciousness) to encompass deeper and more complete knowledge. This goes further than merely finding formulas for sums; in the case of our educational system, all streams of knowledge are related to the fundamental consciousness of the student, and the student experiences everything he learns as being expressions of the pure creative lively intelligence which (s)he directly experiences when (s)he meditates. The meaning of this may not be clear, but the more years a student is in these programs, the more they excel in comparison with others, to the extent that our high school senior classes regularly find themselves in the 99th percentile (top 1 percent) of all the students who take state-wide standard examinations. So, G. W. Bush, great educator that you are, if you recognize such exams as indicating which schools are the best, isn't it time to start funding those that are just like ours? With best wishes from http://www.mum.edu . ==== > I call upon Shakespeare as my final witness: > A Rose by any other name would smell as sweet. ;-) John - this is maybe just a discussion over words or definitions - I never contested that the summation function shouldn't handle non-integer limits. I merely asking for some mathematical need for this - and continuity was given as a reason (an obvious one). I can go for that, as I myself occasionally use the gamma functions, and of course also the factorial and the like. Continuity is a Good Thing in many respects. ==== > I call upon Shakespeare as my final witness: > A Rose by any other name would smell as sweet. ;-) How forcible are right words! Job 6:25 Best Wishes to you too, John. - Reply-To: Veli-Pekka Nousiainen ==== But, isn't this integer->real thing actually about domains? I understand the power: Y^x to be a multiplication yet one can use also non-integer exponents. Are they two different functions? What about the Complex domain of the functions in the HP 48? Take eg. ACOS at the beginning of the Reference Manual which is a relation, not a function. The first system flag sets Principal Value / General Solution. I just want your opinions about domains - educate me! I want to learn more math :-D X > function at all, but an entirely different function? Ahh, John - you walked right into it ;-) Let me quote the HP 48G Series Advanced User's Reference Manual, page > 3-412: !, Factorial (Gamma) Function: Returns the factorial n! of a positive > integer argument n, or the gamma function G(x+1) of a non-integer argument > x. With G I of course mean the greek letter capital gamma. Well, John. The ! function on the HP calculators is the factorial function > for integer arguments ONLY, and the gamma function for everything else - > hence it is indeed two different functions, merely with that interesting > property, that they combined make a continous function. I do, however, understand the arguments made of continuity regarding > summation, but the ! function was probably not the best example ;-)) ==== I'll agree with John on this one - expanding the working domain of symbolic expressions is by far not a novel thing. Although I don't see any real use in this case, I don't see why there should be a ban on this, someone smarter will always come up with a use for whyt first looks like a mathematical whim or game. IIRC results like Sum(n=1..infinity) 1/n = -1/12 do seem to be useful at times in theoretical physics, although you'd first think this is complete Schprewntz. And think of the evaluation of the first terms of diverging perturbation series which yield correct results up to 12 digits... Wild, but useful... Just as Dirac functions were first seen as heresy before they were formalised into distributions...(don't remember by whom...) Gerard ==== > I would have to say it makes absolutely no mathematical sense to have > non-integer limits in a summation. Summations are discrete functions and it > only makes sense (at least to me) to use discrete or integer limits. I agree, therefore it confused me slightly that such summations could be evaluated (I had expected an error message) - hence this post. ==== > I would have to say it makes absolutely no mathematical sense to have > non-integer limits in a summation. Summations are discrete functions and > it > only makes sense (at least to me) to use discrete or integer limits. I agree, therefore it confused me slightly that such summations could be > evaluated (I had expected an error message) - hence this post. It is standard mathematical procedure to require the lower limit of such a summation to be integral, but not the upper limit, with the summation going to the floor of the upper limit. This would be similar to the FOR X := A TO B DO.... structure in PASCAL, where A must be an integer, but B need not be one. ==== I think Nick has explained sothing in one of his marathon. The calculator knows the theoriccal formula for the summation of the n first square, S(x,1,n,xÓ)=n*(2*n+1)*(n+1)/6. To compute your summation, you just have to make a difference and replace the limit with your numbers (which do not have to be integer in this formula) to find the result given by the hp. Alban. > I would have to say it makes absolutely no mathematical sense to have > > non-integer limits in a summation. Summations are discrete functions and > it > > only makes sense (at least to me) to use discrete or integer limits. > I agree, therefore it confused me slightly that such summations could be > evaluated (I had expected an error message) - hence this post. > > It is standard mathematical procedure to require the lower limit of > such a summation to be integral, but not the upper limit, with the > summation going to the floor of the upper limit. This would be similar to the > FOR X := A TO B DO.... > structure in PASCAL, where A must be an integer, but B need not be > one. ==== > I think Nick has explained sothing in one of his marathon. The > calculator knows the theoriccal formula for the summation of the n > first square, S(x,1,n,xÓ)=n*(2*n+1)*(n+1)/6. > To compute your summation, you just have to make a difference and > replace the limit with your numbers (which do not have to be integer > in this formula) to find the result given by the hp. I know this, but I was looking for the mathematical meaning behind it? ==== > I think Nick has explained sothing in one of his marathon. The > calculator knows the theoriccal formula for the summation of the n > first square, S(x,1,n,xÓ)=n*(2*n+1)*(n+1)/6. > To compute your summation, you just have to make a difference and > replace the limit with your numbers (which do not have to be integer > in this formula) to find the result given by the hp. I know this, but I was looking for the mathematical meaning behind it? > He, he! Seems that tiny little indecent questions give more life to a group like this. Mathematical meaning, you ask? Well it has already been said that a summation is dicrete, therefor the summation limits have to be integers. This is not ablolutely true. Discrete (or indiscrete ;-)) has to do with something else. The formula for the summation just gives index, low, high and summand. These things in the formal representation of a sum still don't say if the summation is discret. It is the step, that means the change of index from one value to the next that makes the summation discrete. Now, nobody can say that it shopuld be not allowed to carry out a summation, like for example sum(n,0,5,n) in steps of, say 0.5, instead of 1 for n. But it is always (?) possible to change the summand in such a way, that a summation with step of 1 gives the same result. In our example the sum sum(n,0,5,n) would give the same result as sum(n,0,10,n/2) with steps of 1. Both summations are still very discrete. The situation gets indiscrete when the width of the step gets infinitesimal small. Carrying that to the extrem case of the tiniest steps that you could imagine, you get the integration. About such things, like summations of complex numbers: The problem is here not discretion or indiscretion ;-). The problem is that you must specify a path aling which you add. In function theory we learn that there are functions which are indifferent to the way that we choose to integrate them in complex. The integral of such functions over a closed curve (circle, ellipse etc) is always nada, nema, zero. But there are other, quite unhealthy functions that behave exatly the opposite way. Same with sums. There are some summands that give different sums if summed over one way or the other. Now, about the mathematical meaning, well on the one side you have summations that accumulate some values using a finite step for the index, on the other side you have integrations that use infinitite small step dx. The width of the step for summations is not particulary interesting, since you can always change the sum, so that you get the same results using a step of 1. And since indices that go like 1,2,3,.... are somehow easy to grasp (integers, natural numbers) we use them. Or is there any other reason, Professor? Indiscrete greetings, Nick. ==== > But it is > always (?) possible to change the summand in such a way, that a > summation with step of 1 gives the same result. In our example the > sum sum(n,0,5,n) would give the same result as sum(n,0,10,n/2) with > steps of 1. Both summations are still very discrete. This is what I was referring to by sensible. You can achieve the desired effect by making changes to the summand instead of making the limits of the sum non-integers. I'm not sure enough to say that it will *always* work, but at first glance I dont see why not. > Now, about the mathematical meaning, well on the one side you have > summations that accumulate some values using a finite step for the > index, on the other side you have integrations that use infinitite > small step dx. The width of the step for summations is not particulary > interesting, since you can always change the sum, so that you get the > same results using a step of 1. And since indices that go like > 1,2,3,.... are somehow easy to grasp (integers, natural numbers) we > use them. Or is there any other reason, Professor? To make something that is inherently simple appear more complex? ;-) Aaron ==== > But it is > always (?) possible to change the summand in such a way, that a > summation with step of 1 gives the same result. In our example the > sum sum(n,0,5,n) would give the same result as sum(n,0,10,n/2) with > steps of 1. Both summations are still very discrete. This is what I was referring to by sensible. You can achieve the desired > effect by making changes to the > summand instead of making the limits of the sum non-integers. I'm not sure > enough to say that it will *always* > work, but at first glance I dont see why not. Sorry, I didn't understand that you mean the same. > Now, about the mathematical meaning, well on the one side you have > summations that accumulate some values using a finite step for the > index, on the other side you have integrations that use infinitite > small step dx. The width of the step for summations is not particulary > interesting, since you can always change the sum, so that you get the > same results using a step of 1. And since indices that go like > 1,2,3,.... are somehow easy to grasp (integers, natural numbers) we > use them. Or is there any other reason, Professor? To make something that is inherently simple appear more complex? ;-) Yeah, that might be a real reason. Or else, what complex marathons should I write? Keep me from unemployment, so to speak ;-) Greetings, Nick. ==== Try out 'EXP(X+2)+EXP(X)' FACTOR. It returns 'EXP(X+2)+EXP(X)'. Now try 'EXP(X+2)+EXP(X)' TSIMP FACTOR, and you get 'EXP(X)*(EXP(2)+1)'. Well, FACTOR doesn't work too good with non-rational expressions, huh? It needs help, with for example TSIMP. Another interesting question - how do we get from 'EXP(X)*(EXP(2)+1)' to the original expression 'EXP(X+2)+EXP(X)'? I haven't succeded in finding a way - maybe you can do it? ==== Try out 'EXP(X+2)+EXP(X)' FACTOR. It returns 'EXP(X+2)+EXP(X)'. Now try > 'EXP(X+2)+EXP(X)' TSIMP FACTOR, and you get 'EXP(X)*(EXP(2)+1)'. Well, > FACTOR doesn't work too good with non-rational expressions, huh? It needs > help, with for example TSIMP. > That's the way it is implemented. FACTOR does polynomial factorization not rewriting. > Another interesting question - how do we get from 'EXP(X)*(EXP(2)+1)' to the > original expression 'EXP(X+2)+EXP(X)'? I haven't succeded in finding a way - > maybe you can do it? > LIN ==== > That's the way it is implemented. FACTOR does polynomial factorization > not rewriting. Ok - an interesting limitation (TI-users will love this ;-). > LIN I still get '(EXP(2)+1)*EXP(X)' with LIN? ==== > That's the way it is implemented. FACTOR does polynomial factorization > not rewriting. Ok - an interesting limitation (TI-users will love this ;-). ??? Nice to know precisely what the calc does. > LIN I still get '(EXP(2)+1)*EXP(X)' with LIN? > It seems to work on my hp49, in exact and approx mode, with or without 'X' in 'VX'. My version is 1.19-5. Camille ==== > That's the way it is implemented. FACTOR does polynomial factorization > not rewriting. Ok - an interesting limitation (TI-users will love this ;-). > LIN I still get '(EXP(2)+1)*EXP(X)' with LIN? > Use DISTRIB, then LIN. Greetings, Nick. ==== > Use DISTRIB, then LIN. Riiiight! That did it - thanks.... ==== I am trying to compile a input form program with debug 2, it is from the examples file for sysrpl document. I am getting the following errors which I have been trying to work out for the last few days: sasm.exe: error opening_head.a for reading sasm.exe: error opening_table.a for reading sasm.exe: error opening_end.a for reading Unexisting entry FPTR2 Help would be appreciated MC ==== My guess is that you are trying to compile a library, and that the library creation (namely makerom) failed for some reason. For example, if you do not have a library number put in (did you do an include of your project name.H in at least one of your files?) or that you do not have xNAME or NAMELESS in your program... > I am trying to compile a input form program with debug 2, it is from the > examples file for sysrpl document. I am getting the following errors which I > have been trying to work out for the last few days: > sasm.exe: > error opening_head.a for reading > sasm.exe: > error opening_table.a for reading > sasm.exe: > error opening_end.a for reading > Unexisting entry FPTR2 > Help would be appreciated > MC Reply-To: halfordf@colorado.edu ==== What gives??? Forrest ----- The following addresses had permanent fatal errors ----- (reason: 550 Invalid recipient: ) ----- Transcript of session follows ----- ... while talking to gateway.attbi.com.: > RCPT To: <<< 550 Invalid recipient: 550 5.1.1 ... User unknown >If anyone is interested I am selling both books on half.com they have never >been used and are in exhalent condition. I am also selling my hp49 calc >(id94202887) it is a new replacement calc from hp barely used. it comes with >2 cases, cable to connect to computer, both manuals and the pocket guide, >also a costome made padded crash proof case I made from a sears craftsman >tool case I got the idea from a rev post. anyway its all there if u are >interested > ==== the following problem: When I type xroot(3, 8), the answer 2 is showed (as expected) But, when I type xroot(3, -8) the complex mode is requested and my expected answer isn't shown (that would be -2). Is there some configuration I could do to solve the problem ? Thanx. ==== > the following problem: > When I type xroot(3, 8), the answer 2 is showed (as expected) > But, when I type xroot(3, -8) the complex mode is requested and my expected > answer isn't shown (that would be -2). Is there some configuration I could do to solve the problem ? > Your CAS has to be in aproximate mode. > Thanx. ==== > the following problem: > When I type xroot(3, 8), the answer 2 is showed (as expected) > But, when I type xroot(3, -8) the complex mode is requested and my expected > answer isn't shown (that would be -2). That's strange. As long as I'm in approximate mode, I get the expected -2. whether I use 'XROOT(3,-8)' EVAL or -8 3 XROOT. But in exact mode, I get '2*((1+i*v/3)/2)' (where v/ is the radical character), and EVAL on that gives me '1+i*v/3'. Well, if I cube that I do get -8, but it's certainly not the answer that I would've expected. > Is there some configuration I could do to solve the problem ? Use approximate mode. But I don't have any idea why, other than try not to get the CAS involved in anything that doesn't need it; it seems to have a habit of making things more complicated than they need to be. -- James ==== > the following problem: > When I type xroot(3, 8), the answer 2 is showed (as expected) > But, when I type xroot(3, -8) the complex mode is requested and my expected > answer isn't shown (that would be -2). That's strange. As long as I'm in approximate mode, I get the expected > -2. whether I use 'XROOT(3,-8)' EVAL or -8 3 XROOT. But in exact mode, I > get '2*((1+i*v/3)/2)' (where v/ is the radical character), and EVAL on > that gives me '1+i*v/3'. Well, if I cube that I do get -8, but it's > certainly not the answer that I would've expected. when on the unit circle you start at an angle of 0 and go counter clockwise. The first 3rd root of -8 that you meet is then '2*((1+i*v/3)/2). (Seen in complex numbers marathon ;-)) Greetings, Nick. ==== > But, when I type xroot(3, -8) the complex mode is requested and my expected > answer isn't shown (that would be -2). -2 is the answer with my 48GX. For the first complex result, I must use x^y ==== > the following problem: > When I type xroot(3, 8), the answer 2 is showed (as expected) > But, when I type xroot(3, -8) the complex mode is requested and my expected answer isn't shown > Is there some configuration I could do to solve the problem ? > XROOT always returns only one answer. Try to use SOLVE: XROOT(3,8) <=> SOLVE(X^3=8,X) > ...(that would be -2). Hmm, there are three answers, but there is no X=-2. ;) Piotr Kowalewski. ==== Once I initiate the RECV or KGET commands putting the calculator in server mode how do I get out of it from within a program. Help would be appreciated Martin ==== > Once I initiate the RECV or KGET commands putting the calculator > in server mode how do I get out of it from within a program. Help would be appreciated Neither RECV nor KGET put the calculator in server mode. The RECV command tells the calculator to receive a file (using the Kermit protocol) from another device. The KGET tells the calculator to get a file (again using the Kermit protocol) from another device which is in Kermit server mode. If the other device doesn't send a file (or respond to the KGET), the calculator will eventually (after about 50 seconds) error out with a Timeout error. To put the calculator into server mode, use the SERVER command to put it in Kermit server mode, or in the case of the 49G, XSERV to put it in XModem server mode. While in Kermit server mode, the client device can terminate server mode by sending either a FINISH or LOGOUT command to the calculator. I don't know that there's any way for an XModem client to terminate server mode. So far as terminating server mode from the calculator, the only ways that I know of is to cause an error by pressing the CANCEL (or ATTN, on a 48S series), or by having a control alarm come due. Which calculator are you using? -- James ==== James, My problem is I am communicating with a SDL30 digital level and the only way to prompt the instrument to start reading is to initiate the program Ç CLEAR LM XMIT RECV È and then press the cancel button on the calculator which then starts the machine to read. Without the RECV command for some reason the instrument will not initiate. Could it just have something to do with my IOPAR { 1200 0 0 0 1 2}. Martin > Once I initiate the RECV or KGET commands putting the calculator > in server mode how do I get out of it from within a program. Help would be appreciated Neither RECV nor KGET put the calculator in server mode. The RECV command tells the calculator to receive a file (using the > Kermit protocol) from another device. The KGET tells the calculator to > get a file (again using the Kermit protocol) from another device which > is in Kermit server mode. If the other device doesn't send a file (or > respond to the KGET), the calculator will eventually (after about 50 > seconds) error out with a Timeout error. To put the calculator into server mode, use the SERVER command to put it > in Kermit server mode, or in the case of the 49G, XSERV to put it in > XModem server mode. While in Kermit server mode, the client device can > terminate server mode by sending either a FINISH or LOGOUT command to > the calculator. I don't know that there's any way for an XModem client > to terminate server mode. So far as terminating server mode from the > calculator, the only ways that I know of is to cause an error by > pressing the CANCEL (or ATTN, on a 48S series), or by having a control > alarm come due. Which calculator are you using? > -- > James > ==== > James, My problem is I am communicating with a SDL30 > digital level and the only way to prompt the instrument to > start reading is to initiate the program > Ç CLEAR LM XMIT > RECV > È and then press the cancel button on the calculator which > then starts the machine to read. Without the RECV command > for some reason the instrument will not initiate. Could it > just have something to do with my IOPAR { 1200 0 0 0 1 2}. I'm not familiar with the SDL30 digital level other than that it's made by Sokkia. I certainly don't know which communication parameters and protocols it uses. Do you have any documentation for it? Are you sure that it uses the Kermit file transfer protocol? Am I correct in guessing that you're using a 48G series calculator? I can only guess that the SDL30 is trying to send a file, so it waits for the calculator to finish receiving it, but for some reason a connection isn't established, and then the error packet from the calculator tells it to give up. What happens on the calculator when it gets to the RECV command? Do you get a Connecting message? Do you get Retry #1 through Retry #9 messages? If you don't press CANCEL, Do you eventually get a Timeout error? Does a new variable appear? Is an existing variable overwritten? Certainly IOPAR can cause communication problems. But what the correct values are depends at leat partly on the device that the calculator is connected to. The default IOPAR is { 9600 0 0 0 3 1 }. The first value is the speed in bits per second; 1200, 2400, 4800, and 9600 are your choices. The second value is for parity; your choices are 0 for none, 1 for odd, 2 for even, 3 for mark, and 4 for space. The third value is for receive pacing and the fourth is for transmit pacing. The choices for pacing are 0 for disable or 1 (actually, any non-zero real number) for enable. Pacing is XON/XOFF software flow control, and it's neither needed nor used with Kermit. The fifth parameter is for the packet error detection method; the choices are 1, 2, and 3. If the devices disagree on the method, they should both fall back to using 1, so it *should* work regardless of this. Used for Kermit only. The sixth value is the Kermit ASCII transfer character translation code; the choices are 0, 1, 2, and 3. A proper File header from the sending device will override this, but I suppose that if the header doesn't say otherwise, the current translation mode would be used. Used for Kermit ASCII transfers and print (over wire) commands only. You might also want to look at the system flags. The ones that might be particularly relevant are -33, -35, -36, -39, and maybe -51. James > Martin > Once I initiate the RECV or KGET commands putting the calculator > > in server mode how do I get out of it from within a program. > > Help would be appreciated Neither RECV nor KGET put the calculator in server mode. The RECV command tells the calculator to receive a file (using the > Kermit protocol) from another device. The KGET tells the calculator to > get a file (again using the Kermit protocol) from another device which > is in Kermit server mode. If the other device doesn't send a file (or > respond to the KGET), the calculator will eventually (after about 50 > seconds) error out with a Timeout error. To put the calculator into server mode, use the SERVER command to put it > in Kermit server mode, or in the case of the 49G, XSERV to put it in > XModem server mode. While in Kermit server mode, the client device can > terminate server mode by sending either a FINISH or LOGOUT command to > the calculator. I don't know that there's any way for an XModem client > to terminate server mode. So far as terminating server mode from the > calculator, the only ways that I know of is to cause an error by > pressing the CANCEL (or ATTN, on a 48S series), or by having a control > alarm come due. Which calculator are you using? > -- > James ==== James, was looking for in:- Ç CLEAR LM XMIT DROP CR È It is rare, but if the level has a hardware (DTR/DSR) or software (XON/XOFF) flow control setting, turn it off. ==== > I have a data stream of know length, which I wish to store in a > variable. (I think it has got odd parity). > Does anyone have a program I can look at, or know where I can find > some more info. (the HP I/O guide was not much help. Well, which calculator? What is the length of the data stream? You're probably looking for the SRECV command, and if you're not quite sure of just when the data might be arriving, you might want to use the BUFLEN command in a DO loop. Note that both of these commands leave it up to you to determine what (if anything) to do about any I/O error. Also see the PARITY command. If you're using a 48 and the data stream is more than 255 bytes long, then you might want to edit the reserved variable IOPAR to use receive pacing, as long as the data doesn't contain characters 19 or 17 decimal, which would be treated as XOFF or XON signals. Otherwise, you'll probably either have to have the data broken up into blocks that the calculator can handle, or use one of the built-in file transfer protocols. -- James ==== While coding the library function mentioned in the thread SysRPL and unevaluated algebraic function I stumbled upon a bug in CRLIB When you add a rompointer that contains only a string the rompointer doesn't appear in the menu but you can access it by its name. EXAMPLE $ROMID 1207 $CONFIG 1 $TITLE TEST $VISIBLE {STRING P} $HIDDEN {} P << 2 ^ >> STRING THIS IS A TEST Now build the lib with CRLIB store it in a port and warmstart after 1207 TMENU you see an empty label and then P the empty label beeps if you press it but if you type in STRING you get THIS IS A TEST I seem to remember a 48 libbuilder that could make hidden commands but I don't remember which one -- ==== I am not sure, but if I remember well, we have introduced a mod in the 49 that allowed us to win quite a bit of space in the rom (it's something for managing /displaying menus) and it has this draw back as a side effect. You can 'fix' the problem by embedding your string in a program... > While coding the library function mentioned in the thread > SysRPL and unevaluated algebraic function > I stumbled upon a bug in CRLIB When you add a rompointer that contains only a string > the rompointer doesn't appear in the menu but you can > access it by its name. EXAMPLE $ROMID 1207 > $CONFIG 1 > $TITLE TEST > $VISIBLE {STRING P} > $HIDDEN {} > P << 2 ^ > STRING THIS IS A TEST Now build the lib with CRLIB store it in a port and warmstart after 1207 TMENU you see an empty label and then P the empty label beeps if you press it but if you type in STRING you get THIS IS A TEST I seem to remember a 48 libbuilder that could make hidden commands but I don't remember which one -- > This message was written with 100% recycled electrons Pivo > ==== I am not sure, but if I remember well, we have introduced a mod in the 49 > that allowed us to win quite a bit of space in the rom (it's something for > managing /displaying menus) and it has this draw back as a side effect. Not quite. The last object of a library can't be a string, or if it is a string it will be used to display the title in a choosebox menu. You can put a string anywhere, but the last object can't be one. I had to find a way to display a title in a choosebox menu without breaking the existing format, so that's the solution I've used ==== > The last object of a library can't be a string, or if it is a string it will > be used to display the title in a choosebox menu. Which choose menu do you mean? when I turn of the softmenu flag (-117) I still get softmenus for libraries > You can put a string anywhere, but the last object can't be one. But when it isn't the last object it still doesn't appear in the libmenu, a bug maybe? > I had to find a way to display a title in a choosebox menu without breaking > the existing format, so that's the solution I've used You can put anything after the hash table and nobody will know :-0 I used this as a to make a hackproof library since library extractors do not see this area. I ran a program directly from the library itself by pointing the PC to this area Unfortunately Thomas Rast cracked it in less than a day :-) -- ==== The last object of a library can't be a string, or if it is a string it will > be used to display the title in a choosebox menu. Which choose menu do you mean? > when I turn of the softmenu flag (-117) I still get softmenus for > libraries If you clear the flag -117 (for choose box menu) you will see that each menu as a title. The way a title is defined is by using a string in the library. When creating the menu list, each time a string is found it will be used as the title for the menu. The last string found will be the active menu title. Give it a try, you will see (easy to experiment). The downside, is that strings can't be used in a library directly, you must put them in a program if you want to achieve the same result ==== > If you clear the flag -117 (for choose box menu) you will see that each menu > as a title. The way a title is defined is by using a string in the library. > When creating the menu list, each time a string is found it will be used as > the title for the menu. The last string found will be the active menu title. Are the strings written directly into the library or can messagenumber be used? I«m just asking because of translation. Greetings Andreas ==== > I am not sure, but if I remember well, we have introduced a mod in the 49 > that allowed us to win quite a bit of space in the rom (it's something for > managing /displaying menus) and it has this draw back as a side effect. I gathered that it must have been a menu 'problem' since the lib was fine > You can 'fix' the problem by embedding your string in a program... Fix? I was planning on using it for some hidden commands! Are only strings affected? I tried some other types but they all worked as they should. -- ==== Well, I think only string are affected... But did you try a program with a TakeOver ? like: :: TakeOver foo and the rest of your program there? ; I am not sure, but if I remember well, we have introduced a mod in the 49 > that allowed us to win quite a bit of space in the rom (it's something for > managing /displaying menus) and it has this draw back as a side effect. I gathered that it must have been a menu 'problem' since the lib was > fine You can 'fix' the problem by embedding your string in a program... Fix? I was planning on using it for some hidden commands! > Are only strings affected? I tried some other types but > they all worked as they should. -- > This message was written with 100% recycled electrons Pivo ==== just a guess: are you entering xy as x * y? Otherwise the calc would think you refer to a variable called xy. When this variable isn't defined there will be no valid values in your plot, hence the empty screen. Thomas > Yea, I guess you might have enough information, huh? :) > Cyrille, I am honored that you would take the time to engage a lowly > cal. II student about his poorly run calulator, but I really appreciate it. Your example worked like a charm. After that worked, I went back to the > original and (after wiping out the PPAR var and others) used the following: z=x^2*y-xy^3 This is the example in the manual(page 4-27 of the pdf). > It shows up as a blank screen after a few moments (10-20 sec) of > calculating. This is to say that the screen shows a very nice and normal > display, offering no data other than the compass in the lower left and > the exit button in the lower right. Is this a bug, or am I doing something else incorrectly? Matt > ==== Matt just a guess: are you entering xy as x * y? > Otherwise the calc would think you refer to > a variable called xy. When this variable > isn't defined there will be no valid values > in your plot, hence the empty screen. Thomas > Yea, I guess you might have enough information, huh? :) > Cyrille, I am honored that you would take the time to engage a lowly > cal. II student about his poorly run calulator, but I really appreciate it. > Your example worked like a charm. After that worked, I went back to the > original and (after wiping out the PPAR var and others) used the following: > z=x^2*y-xy^3 > This is the example in the manual(page 4-27 of the pdf). > It shows up as a blank screen after a few moments (10-20 sec) of > calculating. This is to say that the screen shows a very nice and normal > display, offering no data other than the compass in the lower left and > the exit button in the lower right. > Is this a bug, or am I doing something else incorrectly? > Matt > ==== I would like to column reduce rather than row reduce a matrix to echelon form. MATH MATRIX ROW RCIJ is the row reduction utility that HP supplies on the 48GX. Does anyone know how to look at the HP commands for RCIJ so I could modify it to work with columns? Or if not that how would I program mmstat@erols.com ==== mmstat escribi.97 en el mensaje I would like to column reduce rather than row reduce a matrix to echelon > form. MATH MATRIX ROW RCIJ is the row reduction utility that HP supplies on > the 48GX. Does anyone know how to look at the HP commands for RCIJ so I > could modify it to work with columns? Or if not that how would I program mmstat@erols.com > Could you use TRN, then row reduction, and finally TRN again? I have programmed rcij and ccij commands for working with numeric and symbolic matrices, but they need MK and Erable instaled for working... ==== I am wondering if it is possible to stop this kind of loop while there are not a RS232 reception. 0 STIME . . . DO WHILE KEY NOT REPEAT 1 SRECV DROP2 TICKS DUP ROT - B->R ROT MIN SWAP 'j' INCR DROP END UNTIL 13 == @ c key to stop after a RS232 reception. END I tried this one: 0 STIME . . . IFERR @ for [ON] key. WHILE 1 REPEAT 1 SRECV DROP2 TICKS DUP ROT - B->R ROT MIN SWAP 'j' INCR DROP END THEN END But because of an unpredicted stopping, sometime I lose some data. Tal ==== I am wondering if it is possible to stop > this kind of loop while there are not a > RS232 reception. Sure, as long as you press the C key very quickly after the last byte arrives at the port. ;-) Pressing CANCEL ought to stop it too, but I suppose not usually quite the way that you want. > 0 STIME > . > . > . > DO > WHILE > KEY NOT > REPEAT > 1 SRECV > DROP2 > TICKS DUP ROT - B->R ROT MIN SWAP > 'j' INCR DROP > END > UNTIL > 13 == @ c key to stop after a RS232 reception. > END The problem is that with 0 STIME, 1 SRECV will wait indefinitely for something to arrive. So why not go back to using some other value for STIME, and proceed depending on whether an I/O error (presumably # C02h, Timeout) occurs from SRECV. You could do some additional checking to make sure that the error was really from a timeout. Yes, there will be a slight additional delay before executing TICKS if a byte comes in after SRECV times out and before the program loops back to SRECV again, and with 25.4 for STIME, the delay before the program actually gets around to checking the key is likely to be very noticeable, but perhaps acceptable. You could try the following: 25.4 STIME . . . DO WHILE KEY NOT REPEAT 1 SRECV IF SWAP DROP @ Replace with NIP for 49G THEN TICKS DUP ROT - B->R ROT MIN SWAP 'j' INCR DROP END END UNTIL 13 == @ c key to stop after a RS232 reception. END -- James ==== Hey I saw this on comp.sys.handhelds I thought you guys would get a kick out of it. I have no tried it yet. JIM --------------------------------------------- Waterloo, Canada - September 9, 2002 - Poliplus Software is thrilled to announce the much anticipated release of Formulae 1 for PocketPC (Compaq iPaq series devices). Formulae 1 (F1) is a powerful and easy to use Computer Algebra System designed specially for the teaching and exploration of mathematics. F1 gives the user the ability to see intermediate steps of calculations as well as final answers. The step feature has tremendous pedagogical value that users will come to appreciate over and over again. While there are several different numerical based calculator programs for PDAs, there is nothing really that comes close to the mathematical capabilites of F1. Transform your PDA into the next generation handheld Mathematics system designed to get answers and see steps. If you are a student, this is a must have application. F1's User Interface was custom designed to optimize the use of the small screen area of the device. Most of the screen area is available to view and manipulate math expressions, unlike other calculators where most of the screen is populated by buttons. For a complete list of features (with lots of screen shots) and some more information go to : http://www.poliplus.com/handheldproducts.htm Formulae 1 for PocketPC requires Insignia's Jeode (Java Virtual Machine) which comes on the CD of every Compaq iPaq machine. Jeode allowed Formulae 1 to run unchanged and exactly on Sharp Zaurus we have been getting lots of positive feedback from Sharp Zaurus users. Formulae 1 quickly climbed to the 8th overall bestselling software list at Handango. The excitment has been overwhelming. What follows are some verbatim quotes from users and we hope these testimonials will attest to not only our software capabilities by also Jeode's. ----------------------------------------------------------------- I would like to congratulate to your marvellous program called F1! I couldn't believe when I saw the advertisement on the Zaurus portal. At least I found a real CAS for my Zaurus! I was very happy indeed. And I am very content with F1 - it's a cool piece of software regarding footprint and functionality. Compared to my CAS I'm using on my notebook computer, I must say that F1 solves most of my maths problems. It's most astounding how well F1 performs on the Zaurus. The graphical input method is ingenious; I don't have to bother with complicated text definitions of my formulae like those found in other editors. It's much more like the state-of-the-art CAS Mathematica, if you allow the comparison. I have to express my deepest respect to the programmers. ----------------------------------------------------------------- Formulae 1 is a java based symbolic/numerical math engine. It has a very nice equation editor which can handle matricies, integrals, derivatives, and polynomials. The graphing functionality is primitive but very useful. The program appears to have very few if any bugs. FOr students it is nice to have the step feature. I recommend this to any science or mathematics students learning or having to use basic calculus or linear algebra. An additional nice feature is the help system which is very very useful. ----------------------------------------------------------------- Formulae 1 is the software application that I have been looking for on a handheld device. What is nice about the product other than the rich features is that it is usable on various handhelds because it is written in Java. The feature list is extensive and covers most areas of mathematics found in calculus I and II class material. Features lacking in this version are limits, 3D plotting, linear and non-linear regression. ----------------------------------------------------------------- ==== > Features lacking in this version are limits, 3D plotting, linear and > non-linear regression. It seems there is no limit instructions, which means that the CAS is not that much advanced. I did not see any mention of a programming language. On the Zaurus you can run xcas, it has much more features and is free. And since the device where you run this prog is around 400$ or more, I wonder how a 30$ basic CAS could have some success: for that price you can have both a TI89 and a HP49:-). <3D7CED8A.1030605@nospam.fourier.ujf-grenoble.fr> ==== > Features lacking in this version are limits, 3D plotting, linear and > non-linear regression. It seems there is no limit instructions, which means that the CAS > is not that much advanced. I did not see any mention of a programming > language. On the Zaurus you can run xcas, it has much more features > and is free. And since the device where you run this prog is around 400$ > or more, I wonder how a 30$ basic CAS could have some success: > for that price you can have both a TI89 and a HP49:-). I prefer having my HP200LX with Derive for DOS... The same software can then be used on my home PC, if I need a little more speed... ;) -- ----- Je viens d'adopter une limace (elle s'appele Chompie), et j'ai trouve des infos sur un site qui n'a pas ete mis a jour depuis des siecles! Meme si l'auteur ne s'y interesse plus, le site garde tout son interet. -+- P in : Guide du Neuneu d'Usenet - L'.90re des limaces m.8edia -+- ==== > I prefer having my HP200LX with Derive for DOS... The same software can > then be used on my home PC, if I need a little more speed... ;) > <3D7CED8A.1030605@nospam.fourier.ujf-grenoble.fr> <3D7F75D4.9010404@nospam.fourier.ujf-grenoble.fr> ==== > I prefer having my HP200LX with Derive for DOS... The same software can > then be used on my home PC, if I need a little more speed... ;) > I tested it once, and even if I own and use a lot of HP calcs (including my 9 months-old HP49), I weren't able to do anything useful with xcas... But since it must be my dumbness, I promise I'll read the doc, and try again later ;) In the meantime, I'm still reading the Derive's manual. -- ----- Je crois que le meilleur moyen, c'est une signature qui contient toutes les signatures et de virer les mauvaises avant envoi. -+- Ivan in : Guide du Neuneu d'Usenet : Je signe donc je suis -+- ==== > I tested it once, and even if I own and use a lot of HP calcs (including > my 9 months-old HP49), I weren't able to do anything useful with xcas... But since it must be my dumbness, I promise I'll read the doc, and try > again later ;) > It would be a good idea since xcas is evolving at a fast rate. As explained in a previous post, you can for example read the TI AMS manual and try the same with xcas. There are also some Maple or Mupad instructions that are implemented (but TI compatibility is much better). HP compatibility is currently the syntax and RPN mode, not for the instructions. ==== > And since the device where you run this prog is around 400$ > or more, I wonder how a 30$ basic CAS could have some success: > for that price you can have both a TI89 and a HP49:-). Bernard, It seems to me that you are neglecting people who already have that $400 device. I am a huge fan of the 48/49 (and sysRPL programming) but I also have an Ipaq 3835, and so I just purchased Formulae 1. This is not an indication that I don't like the CAS in the 49, simply the reality that the 49 is now an obsolete device, no longer produced or supported. Reality dictates that I move on and I find that when I want to pack one device with me, it's the Ipaq. It's current, supported, has an ever-increasing software base and allows me do do a multitude of tasks. Simon ==== > It seems to me that you are neglecting people who already have that > $400 device. I am a huge fan of the 48/49 (and sysRPL programming) but > I also have an Ipaq 3835, and so I just purchased Formulae 1. Most of xcas interface and development has been done thinking about handheld users, and you should know that Prof. Parisse uses ipaq with Familiar distro to test (so do I). > This is not an indication that I don't like the CAS in the 49, simply > the reality that the 49 is now an obsolete device, no longer produced > or supported. Reality dictates that I move on and I find that when I > want to pack one device with me, it's the Ipaq. It's current, > supported, has an ever-increasing software base and allows me do do a > multitude of tasks. I am agree with the idea, but not with the cost of such device.. that's the reason I have started a project to create a low cost gnu/linux platform. It is already in early stages. J.Manrique Users Club from Gij.97n #1077 HPCC Member ==== > And since the device where you run this prog is around 400$ > or more, I wonder how a 30$ basic CAS could have some success: > for that price you can have both a TI89 and a HP49:-). Bernard, It seems to me that you are neglecting people who already have that > $400 device. I am a huge fan of the 48/49 (and sysRPL programming) but > I also have an Ipaq 3835, and so I just purchased Formulae 1. Carlos. > This is not an indication that I don't like the CAS in the 49, simply > the reality that the 49 is now an obsolete device, no longer produced > or supported. Reality dictates that I move on and I find that when I > want to pack one device with me, it's the Ipaq. It's current, > supported, has an ever-increasing software base and allows me do do a > multitude of tasks. Simon ==== >>And since the device where you run this prog is around 400$ >>or more, I wonder how a 30$ basic CAS could have some success: >>for that price you can have both a TI89 and a HP49:-). > Bernard, It seems to me that you are neglecting people who already have that > $400 device. I am a huge fan of the 48/49 (and sysRPL programming) but > I also have an Ipaq 3835, and so I just purchased Formulae 1. > There is a misunderstanding here: I develop and run xcas on my ipaq. So you can't say I'm neglecting the ipaq, to the contrary. I did choose to develop a native application, which I think is mandatory when you want to solve real-world problem. This means that xcas is not a java, but a true C++ application. It is compiled with but it does not ship a complete ANSI-C++ compiler). Either replace wince or install it on a flashcard. Then you will need around 1.5M of flash to store the app. More info http://www-fourier.ujf-grenoble.fr/~parisse/giac.html xcas is not completely ready for prime-time release but it has today around 95% of the HP49 and TI89 functionnality. If you have a TI-Basic program, you can run it with xcas except if it uses some of the pixel graphic or stats instructions (see below). If you prefer RPN, just check the mode. Or you can program it using C like syntax. Other features are interactive debugger, dynamic geometry, pretty-print, on-line help etc. And since it /* TI89 compatibility Notes Use maple_mode(3) in your config file (~/.xcasrc or xcas.rc) or begin your session with cas configuration (or type maple_mode(3)) 1/ Instructions implemented Algebra: all Calculus: all except product Strings: all Graphics: pixel instructions are not implemented except PxlOn/PxlOff And/Xor/Pixel tests are not implemented Zoom instructions not implemented except ZoomSto/ZoomRcl BldData/RclGDB/StoGDB not implemented Graph currently points to drawFunc Lists: all, note that SortA/SortD are implemented for 1 arg only Maths: all except conversions and units Matrices: all except statistics. LU/QR work with numeric matrices and tolerance argument is ignored Program: all except mode handling, units, getKeys, the Custom and Toolbar instructions Lock/Unlock Stats: !, rand, RandSeed, nCr, nPr 2/ Be sure to use correct case. archive (native) is not like Archive (TI) Conversion of special char (ASCII code >128) conversion sign translated to to Store sign: => Different: != or <>, Greater or equal: >=, Lower or equal: <= i=sqrt(-1): use the i button of xcas transpose sign not translated (use transpose()) */ ==== >>And since the device where you run this prog is around 400$ >>or more, I wonder how a 30$ basic CAS could have some success: >>for that price you can have both a TI89 and a HP49:-). > Bernard, It seems to me that you are neglecting people who already have that > $400 device. I am a huge fan of the 48/49 (and sysRPL programming) but > I also have an Ipaq 3835, and so I just purchased Formulae 1. > There is a misunderstanding here: I develop and run xcas on my ipaq. So > you can't say I'm neglecting the ipaq, to the contrary. I did choose > to develop a native application, which I think is mandatory > when you want to solve real-world problem. This means that xcas > is not a java, but a true C++ application. This is completely irrelevant for users. The software is pretty fast and in the case of Zaurus, the user doesn't even know it is running Java. As long as the software runs fast enough you could as well have programmed it in logo :) Carlos. > It is compiled with > but it does not ship a complete ANSI-C++ compiler). > Either replace wince or install it on a flashcard. Then you will > need around 1.5M of flash to store the app. > More info > http://www-fourier.ujf-grenoble.fr/~parisse/giac.html > xcas is not completely ready for prime-time release but it has > today around 95% of the HP49 and TI89 functionnality. If you have > a TI-Basic program, you can run it with xcas except if it uses > some of the pixel graphic or stats instructions (see below). > If you prefer RPN, just check the mode. Or you can program > it using C like syntax. Other features are interactive debugger, > dynamic geometry, pretty-print, on-line help etc. And since it /* TI89 compatibility Notes > Use maple_mode(3) in your config file (~/.xcasrc or xcas.rc) or > begin your session with cas configuration (or type maple_mode(3)) 1/ Instructions implemented > Algebra: all > Calculus: all except product > Strings: all > Graphics: pixel instructions are not implemented except PxlOn/PxlOff > And/Xor/Pixel tests are not implemented > Zoom instructions not implemented except ZoomSto/ZoomRcl > BldData/RclGDB/StoGDB not implemented > Graph currently points to drawFunc > Lists: all, note that SortA/SortD are implemented for 1 arg only > Maths: all except conversions and units > Matrices: all except statistics. > LU/QR work with numeric matrices and tolerance argument is ignored > Program: all except > mode handling, units, > getKeys, the Custom and Toolbar instructions > Lock/Unlock > Stats: !, rand, RandSeed, nCr, nPr 2/ Be sure to use correct case. archive (native) is not like > Archive (TI) > Conversion of special char (ASCII code >128) > conversion sign translated to to > Store sign: = Different: != or <>, Greater or equal: >=, Lower or equal: <= > i=sqrt(-1): use the i button of xcas > transpose sign not translated (use transpose()) > */ ==== This is completely irrelevant for users. The software is pretty fast > and in the case of Zaurus, the user doesn't even know it is running > Java. As long as the software runs fast enough you could as well > have programmed it in logo :) > I don't think users want to have one program when for example a 10* faster with the same capabilities exists (I don't know the speed decrease when you use java instead of C++ but I would guess some factor around 10). Then I'm curious what you describe as fast enough. Could you give us some benchmarks, like int(1/(x^4-1)^10,x) invert a 15x15 matrix with random coefficients in -99..99 factor(x^100+1) ==== This is completely irrelevant for users. The software is pretty fast > and in the case of Zaurus, the user doesn't even know it is running > Java. As long as the software runs fast enough you could as well > have programmed it in logo :) > I don't think users want to have one program when for example a 10* > faster with the same capabilities exists (I don't know the speed If you are solving a math problem that takes 1 second to solve, a program that solves the same in 100 milliseconds is irrelevant. 1 second is close enough to being instantaneous. > decrease when you use java instead of C++ but I would guess some > factor around 10). Jeode compiles the Java code on demand and most operations are almost instantaneous. > Then I'm curious what you describe as fast enough. Could you give > us some benchmarks, like > int(1/(x^4-1)^10,x) > invert a 15x15 matrix with random coefficients in -99..99 > factor(x^100+1) Could you provide the steps xcas provides when solving the following problems step by step : int(x^2*exp(2*x),x) int(ln(x^2+a^2),x) int((-4*x-88)/(x^2+2*x+5),x) solve(x+2*abs(x)>12,x) solve(sqrt(ln(x))=ln(sqrt(x)),x) sin(acos(sqrt(5)/5)) I want to see the steps !!! not just the final answer. Once again, our intended audience is different and what you seem interested in doing is not what we view our customers doing. ==== You said that the speed was not important to the user where I disagree and I asked about some benchmarks, I note that you don't answer which is in itself an answer. I never said that steb by step was not important, to the contrary, I just did not have time to implement it right now. But don't worry it will be added. And it's not only feasible but rather easy, on the other side, if you can not solve the kind of problems I gave, it will be much harder for you to implement. ==== You said that the speed was not important to the user where > I disagree and I asked about some benchmarks, I note that > you don't answer which is in itself an answer. You haven't answered my questions either. > I never said that steb by step was not important, to the contrary, > I just did not have time to implement it right now. But don't > worry it will be added. And it's not only feasible but rather > easy, Really... Let me know when you have properly implemented step-by-step integration for example and let's compare implementations !!! > on the other side, if you can not solve the kind of problems > I gave, it will be much harder for you to implement. Yeah right, don't forget I have access to lots of source code including YOURS !!! Not that I would use any since everything we do must fit nicely with the step-by-step framework (i.e. the steps must be the same as the ones students would produce by hand. Steps that are illustrated in typical high school/college/university textbooks. ==== Yeah right, don't forget I have access to lots of source > code including YOURS !!! Not that I would use any since > everything we do must fit nicely with the step-by-step > framework (i.e. the steps must be the same as the ones > students would produce by hand. Steps that are illustrated > in typical high school/college/university textbooks. You can not use my source unless you release your application under the GPL. You can use the same algorithms as I use of course. The fact that almost every CAS use algorithms that are not teached shows that if you refuse to use them, your CAS will only remain a pedagogical tool. I claim that it is possible to have both. ==== > Features lacking in this version are limits, 3D plotting, linear and > non-linear regression. It seems there is no limit instructions, which means that the CAS > is not that much advanced. I did not see any mention of a programming > language. On the Zaurus you can run xcas, it has much more features > and is free. And since the device where you run this prog is around 400$ > or more, I wonder how a 30$ basic CAS could have some success: > for that price you can have both a TI89 and a HP49:-). So lack of limits, to you, means not advanced... interesting. Limits are trivial to implement !!! I beleive the press release was for PocketPC but you just have to promote your own offering for the Zaurus... interesting. I'd love to see what Formulae 1 users have to say about your system once they have access to our simple to use and yet uniquely powerful and automatic CAS. Carlos. ==== So lack of limits, to you, means not advanced... interesting. Of course. Limits are used in many areas like derivation (theory) or integration with bounds and is teached during highschool, if your system does not solve limit then it is not of much use compared e.g. to the TI89 or HP49/40. > Limits are trivial to implement !!! > That shows you didn't really try to implement them, maybe you just think of L'Hopital's rule, but a correct limit implementation is much more complex than that. xcas can solve the following limits (using the mrv algorithm which is unfortunately not implemented on the 49) limit( exp(x)*(exp(1/x-exp(-x))-exp(1/x)), x=+infinity); limit( exp(x)*(exp(1/x+exp(-x)+exp(-x^2))-exp(1/x-exp(-exp(x)))), x=+infinity); limit( exp(exp(x-exp(-x))/(1-1/x))-exp(exp(x)), x=+infinity); limit( exp(exp(exp(x)/(1-1/x)))-exp(exp(exp(x)/(1-1/x-ln(x)^(-ln(x))))), x=+infinity); limit( exp(exp(exp(x+exp(-x))))/exp(exp(exp(x))), x=+infinity); limit(exp(exp(exp(x)))/exp(exp(exp(x-exp(-x)))),x=+infinity); limit(exp(exp(exp(x)))/exp(exp(exp(x-exp(-exp(exp(x)))))),x=+infinity); limit(exp(exp(x))/exp(exp(x-exp(-exp(exp(x))))),x=+infinity); limit(x*ln(x)*ln(x*exp(x)-x^2)^2/ln(ln(x^2+2*exp(exp(3*x^3*ln(x))))),x=+infi nity); limit((exp(x*exp(-x)/(exp(-x)+exp(-2*x^2/(x+1))))-exp(x))/x,x=+infinity); limit((3^x+5^x)^(1/x),x=+infinity); limit(x/ln(x^(ln(x)^(ln(2)/ln(x)))),x=+infinity); limit(exp(exp(2*ln(x^5+x)*ln(ln(x))))/exp(exp(10*ln(x)*ln(ln(x)))),x=+infini ty); limit((exp(4*x*exp(-x)/(1/exp(x)+1/exp(2*x^2/(x+1))))-exp(x))/exp(x)^4,x=+in finity); limit(exp(x*exp(-x)/(exp(-x)+exp(-2*x^2/(x+1))))/exp(x),x=+infinity); limit( exp(exp(-x/(1+exp(-x))))*exp(-x/(1+exp(-x/(1+exp(-x)))))*exp(exp(-x+exp(-x/( 1+exp(-x)))))/exp(-x/(1+exp(-x)))^2-exp(x)+x, x=+infinity); limit( (ln(ln(x)+ln(ln(x)))-ln(ln(x)))*ln(x)/ln(ln(x)+ln(ln(ln(x)))), x=+infinity); limit(exp(ln(ln(x+exp(ln(x)*ln(ln(x)))))/ln(ln(ln(exp(x)+x+ln(x))))),x=+infi nity); limit(exp(x)*(sin(1/x+exp(-x))-sin(1/x+exp(-x^2))),x=+infinity); limit(exp(exp(x))*(exp(sin(1/x+exp(-exp(x))))-exp(sin(1/x))),x=+infinity); limit( (exp(x*exp(-x)/(exp(-x)+exp(-2*x^2/(x+1))))-exp(x))/x,x=+infinity); limit( ln(ln(x*exp(x*exp(x))+1))-exp(exp(ln(ln(x))+1/x)), x=+infinity); limit(sqrt(x+sqrt(x))-sqrt(x),x=+infinity); limit(sqrt(x+sqrt(x+sqrt(x)))-sqrt(x+sqrt(x)),x=+infinity); limit(4/9*exp(exp(5/2*x^(-5/7)+21/8*x^(6/11)+2*x^(-8)+54/17*x^(49/45)))^8/ln (ln(-ln(4/3*x^(-5/14))))^(7/6),x=+infinity); limit(ln(x)^2*exp(sqrt(ln(x))*ln(ln(x))^2*exp(sqrt(ln(ln(x)))*ln(ln(ln(x)))^ 3))/sqrt(x),x=+infinity); > I beleive the press release was for PocketPC but you just > have to promote your own offering for the Zaurus... interesting. > Form your post < I'd love to see what Formulae 1 users have to say about your > system once they have access to our simple to use and yet > uniquely powerful and automatic CAS. > Yes, please tell your customers about xcas if they have a They might discover that maybe the don't have step by step now but in exchange they have a much more complete CAS with dynamic geometry, programmation, RPN mode and soon able to run many TI89/92 Basic programs. ==== from which this material was excerpted.>> <If our customers request such features, we will certainly implement >them. That's for sure. That is good to heard. Do not ignore the ``techo-lords.'' It is very likely that they will be part of your customer base also. I looked at your WWW accessible material. Unfortunately for me, I neither have a platform on which to execute it nor have a way of ordering if I did own an appropriate platform. > But keep in mind that we favour ease of use >and math learning to complicated systems when you have to learn the >system instead of learning math. The TI-89 is hard to use and requires much system learning just because it was ``dumbed down'' for the ``general public'' and the teaching community. I stipulate that there are many excellent teachers. Unfortunately, the excellent teachers can work with even bad tools or a log (large wooden object that is the immediate result of harvesting trees). Therefore, TI designed the machine for the remaining teachers that need support systems to be able to teach. TI recognizes that fact and provides prepared syllabi, lesson plans, lessons, presentation material, special manuals for the equipment that explain what problems with the machine the students may encounter and how to solve those problem on the machine. (I wish that I had one of those manuals---it has to be better than the manual that came with the machine.) I learned calculus, linear algebra and differential equations (at the college level) on the HP-48 with B. Parisse's Erable. It could assist solving the problems. The TI-89 was almost useless. Follow the Einstein adage: make it as simple as possible; but no simpler. I opine that HP did and TI did not. We are going after the general >public and not the technical-lords ;) ``The poor we will have with us always.'' For much of the masses, a ``four function immediate operation calculator'' (which can be bought for US$2) presents a challenge. >Carlos. ==== > TI recognizes that fact and provides prepared syllabi, > lesson plans, lessons, presentation material, special manuals > for the equipment that explain what problems with the machine > the students may encounter and how to solve those problem on the > machine. provides means sells in this case. I am told my my math professor (Arizona State Univ) that is the primary reason the department has stopped recommending TI calculators, that they have turned documentation into more of a profit center than the hardware itself. -- ==== X > That shows you didn't really try to implement them, maybe > you just think of L'Hopital's rule, but a correct limit > implementation is much more complex than that. xcas can > solve the following limits (using the mrv algorithm > which is unfortunately not implemented on the 49) X Well then you probably can program that to the 1.19-7 I'm sure JYA will help you. Will you do it? ==== > X > Well then you probably can program that to the 1.19-7 > I'm sure JYA will help you. Will you do it? I don't have time to program mrv on the 49. Programming xcas takes too much time and since there is no hope of having more memory and speed on the 49... ==== So lack of limits, to you, means not advanced... interesting. Of course. Limits are used in many areas like derivation (theory) > or integration with bounds and is teached during highschool, if > your system does not solve limit then it is not of much use compared > e.g. to the TI89 or HP49/40. Non-sense. There is no colleration between a system having limits and being advanced. Having limits does not make a system advanced and vice-versa, as your original comment suggested. > Limits are trivial to implement !!! > That shows you didn't really try to implement them, maybe > you just think of L'Hopital's rule, but a correct limit > implementation is much more complex than that. xcas can > solve the following limits (using the mrv algorithm > which is unfortunately not implemented on the 49) > limit( exp(x)*(exp(1/x-exp(-x))-exp(1/x)), x=+infinity); > limit( exp(x)*(exp(1/x+exp(-x)+exp(-x^2))-exp(1/x-exp(-exp(x)))), > x=+infinity); > limit( exp(exp(x-exp(-x))/(1-1/x))-exp(exp(x)), x=+infinity); > limit( exp(exp(exp(x)/(1-1/x)))-exp(exp(exp(x)/(1-1/x-ln(x)^(-ln(x))))), > x=+infinity); > limit( exp(exp(exp(x+exp(-x))))/exp(exp(exp(x))), x=+infinity); > limit(exp(exp(exp(x)))/exp(exp(exp(x-exp(-x)))),x=+infinity); > limit(exp(exp(exp(x)))/exp(exp(exp(x-exp(-exp(exp(x)))))),x=+infinity); > limit(exp(exp(x))/exp(exp(x-exp(-exp(exp(x))))),x=+infinity); > limit(x*ln(x)*ln(x*exp(x)-x^2)^2/ln(ln(x^2+2*exp(exp(3*x^3*ln(x))))),x=+infin ity); > limit((exp(x*exp(-x)/(exp(-x)+exp(-2*x^2/(x+1))))-exp(x))/x,x=+infinity); > limit((3^x+5^x)^(1/x),x=+infinity); > limit(x/ln(x^(ln(x)^(ln(2)/ln(x)))),x=+infinity); > limit(exp(exp(2*ln(x^5+x)*ln(ln(x))))/exp(exp(10*ln(x)*ln(ln(x)))),x=+infinit y); > limit((exp(4*x*exp(-x)/(1/exp(x)+1/exp(2*x^2/(x+1))))-exp(x))/exp(x)^4,x=+inf inity); > limit(exp(x*exp(-x)/(exp(-x)+exp(-2*x^2/(x+1))))/exp(x),x=+infinity); > limit( > exp(exp(-x/(1+exp(-x))))*exp(-x/(1+exp(-x/(1+exp(-x)))))*exp(exp(-x+exp(-x/(1 +exp(-x)))))/exp(-x/(1+exp(-x)))^2-exp(x)+x, > x=+infinity); > limit( (ln(ln(x)+ln(ln(x)))-ln(ln(x)))*ln(x)/ln(ln(x)+ln(ln(ln(x)))), > x=+infinity); > limit(exp(ln(ln(x+exp(ln(x)*ln(ln(x)))))/ln(ln(ln(exp(x)+x+ln(x))))),x=+infin ity); > limit(exp(x)*(sin(1/x+exp(-x))-sin(1/x+exp(-x^2))),x=+infinity); > limit(exp(exp(x))*(exp(sin(1/x+exp(-exp(x))))-exp(sin(1/x))),x=+infinity); > limit( (exp(x*exp(-x)/(exp(-x)+exp(-2*x^2/(x+1))))-exp(x))/x,x=+infinity); > limit( ln(ln(x*exp(x*exp(x))+1))-exp(exp(ln(ln(x))+1/x)), x=+infinity); > limit(sqrt(x+sqrt(x))-sqrt(x),x=+infinity); > limit(sqrt(x+sqrt(x+sqrt(x)))-sqrt(x+sqrt(x)),x=+infinity); > limit(4/9*exp(exp(5/2*x^(-5/7)+21/8*x^(6/11)+2*x^(-8)+54/17*x^(49/45)))^8/ln( ln(-ln(4/3*x^(-5/14))))^(7/6),x=+infinity); > limit(ln(x)^2*exp(sqrt(ln(x))*ln(ln(x))^2*exp(sqrt(ln(ln(x)))*ln(ln(ln(x)))^3 ))/sqrt(x),x=+infinity); Wrong again. we have implemented limits on the previous WinCE version but took it out of this initial Zaurus/PocketPC release. > I beleive the press release was for PocketPC but you just > have to promote your own offering for the Zaurus... interesting. > Form your post > < of the Zaurus, where xcas runs also (once you install X11). > And what you call an offering > is not a $$-software, xcas is GPL-ed soft, I won't gain any money, > it's just I don't want people owning an HP to spend 30$ without knowing > there are more powerful free alternatives. Irrelevant of cost, you concluded our stuff was crap (not advanced) without even trying it, based only on the lack of limits and then you went already to praise your own system. I won't bother trashing your program but I am sure our software does a lot of things your software doesn't and vice-versa. Also Powerful, like beauty, is on the eye of the beholder. When it comes to learning math and seeing how something was solved, Formulae 1 is one of the most powerful programs of its kind out there. Definitively worth $30. Now you should compare your free xcas system with Maxima which is also free and also runs on Zaurus. Now let's see how powerful xcas does against Maxima. > I'd love to see what Formulae 1 users have to say about your > system once they have access to our simple to use and yet > uniquely powerful and automatic CAS. > Yes, please tell your customers about xcas if they have a > They might discover that maybe the don't have step by step now > but in exchange they have a much more complete CAS with dynamic > geometry, programmation, RPN mode and soon able to run many TI89/92 > Basic programs. If our customers request such features, we will certainly implement them. That's for sure. But keep in mind that we favour ease of use and math learning to complicated systems when you have to learn the system instead of learning math. We are going after the general public and not the technical-lords ;) Carlos. ==== > Irrelevant of cost, you concluded our stuff was crap (not advanced) Studying Management Engineering I have learned that cost are never irrelevant.. > without even trying it, based only on the lack of limits and then > you went already to praise your own system. I won't bother trashing It would be better saying that he is giving info about alternatives.. Instead of trashing his arguments you should try his system and compares it to yours. > your program but I am sure our software does a lot of things your > software doesn't and vice-versa. Yes, it always happens.. but being open software lacks could be completed by anyone, not waiting for a company decission to make it. > Also Powerful, like beauty, is on the eye of the beholder. When it > comes to learning math and seeing how something was solved, Formulae 1 > is one of the most powerful programs of its kind out there. Definitively > worth $30. I am sure that it worth $30, it is your work. > Now you should compare your free xcas system with Maxima which is also > free and also runs on Zaurus. Now let's see how powerful xcas does > against Maxima. Yes, let's see.. have you done it? Now, we have 3 CAS running in handhelds, two open source and free, and one propietary.. and each using: - clisp (Maxima) - c++ (Giac/Xcas) - java (Formulae 1) Oops.. sorry, I forget Yacas.. it runs in Familiar distro too and it is c++ system too.. It would be nice a comparasion like to one in sci.math.symbolic about CAS systems in PC. > If our customers request such features, we will certainly implement > them. That's for sure. But keep in mind that we favour ease of use > and math learning to complicated systems when you have to learn the > system instead of learning math. We are going after the general > public and not the technical-lords ;) I wouldn't call xcas a technical-lords apps, at least not more than a hp calculator. Of course, being a technical-lord it could be possible to make a lot of things with it without waiting for propietary company update, just read the source and modify it to fit your needs.. but this is for technical-lords ;) J.Manrique Users Club from Gij.97n #1077 HPCC Member ==== > Irrelevant of cost, you concluded our stuff was crap (not advanced) Studying Management Engineering I have learned that cost are never > irrelevant.. Just irrelevant to the conversation of something being crap or not. > without even trying it, based only on the lack of limits and then > you went already to praise your own system. I won't bother trashing It would be better saying that he is giving info about alternatives.. > Instead of trashing his arguments you should try his system and > compares it to yours. It should be the other way around (he should try our system and compare with his) because he was the one commenting on our system. I have no interest comparing systems or commenting on his system. > your program but I am sure our software does a lot of things your > software doesn't and vice-versa. Yes, it always happens.. but being open software lacks could be > completed by anyone, not waiting for a company decission to make it. This is off topic. There are lots of benefits and problems with each model (open-source and proprietaty) and the discussion should go somewhere else. > Also Powerful, like beauty, is on the eye of the beholder. When it > comes to learning math and seeing how something was solved, Formulae 1 > is one of the most powerful programs of its kind out there. Definitively > worth $30. I am sure that it worth $30, it is your work. Not only that, it does useful things for math/science/engineering students that other similar programs can not do and that functionality is definitively worth #30. > Now you should compare your free xcas system with Maxima which is also > free and also runs on Zaurus. Now let's see how powerful xcas does > against Maxima. Yes, let's see.. have you done it? Now, we have 3 CAS running in > handhelds, two open source and free, and one propietary.. and each > using: > - clisp (Maxima) > - c++ (Giac/Xcas) > - java (Formulae 1) Oops.. sorry, I forget Yacas.. it runs in Familiar distro too and it > is c++ system too.. It would be nice a comparasion like to one in sci.math.symbolic about > CAS systems in PC. It would be nice. I won't be doing the comparison that's for sure. Whoever does it, just make sure to compare apples to apples. On the PC, there are several open source and free systems, yet commercial and proprietary Maple and Mathematica are doing pretty well. > If our customers request such features, we will certainly implement > them. That's for sure. But keep in mind that we favour ease of use > and math learning to complicated systems when you have to learn the > system instead of learning math. We are going after the general > public and not the technical-lords ;) I wouldn't call xcas a technical-lords apps, at least not more than a > hp calculator. Of course, being a technical-lord it could be possible > to make a lot of things with it without waiting for propietary company > update, just read the source and modify it to fit your needs.. but > this is for technical-lords ;) This is all good, just not the market we are going after. Carlos. > J.Manrique > Users Club from Gij.97n > #1077 HPCC Member ==== > It should be the other way around (he should try our system and > compare with his) because he was the one commenting on our system. > I have no interest comparing systems or commenting on his system. > No, it is the right way because you can try xcas without spending any $. I must pay 30$ to try your system. Of course you have no interest comparing publicly systems, it's much easier. > It would be nice. I won't be doing the comparison that's for sure. Whoever > does it, just make sure to compare apples to apples. On the PC, there are several open source and free systems, yet commercial > and proprietary Maple and Mathematica are doing pretty well. > I would certainly not describe maple or mathematica as not that advanced CAS. ==== > It should be the other way around (he should try our system and > compare with his) because he was the one commenting on our system. > I have no interest comparing systems or commenting on his system. > No, it is the right way because you can try xcas without spending > any $. I must pay 30$ to try your system. So you are telling me that because you are cheap, it is ok for you to comment on our system (and compare it to yours) without actually trying it. and futhermore, because your system is free, I should spend time and compare it to Formulae 1 for you. You don't have anything final. Why don't you just come up with a final end user product, release it and then show rave reviews from users. > Of course you have no interest comparing publicly systems, it's > much easier. > It would be nice. I won't be doing the comparison that's for sure. Whoever > does it, just make sure to compare apples to apples. On the PC, there are several open source and free systems, yet commercial > and proprietary Maple and Mathematica are doing pretty well. > I would certainly not describe maple or mathematica as not that > advanced CAS. ==== > So you are telling me that because you are cheap, it is ok for > you to comment on our system (and compare it to yours) without > actually trying it. and futhermore, because your system is free, > I should spend time and compare it to Formulae 1 for you. > I can comment your system by the specs that are publicly available. It is clear that you lack some fundemental instructions and it seems also that you do not provide a programming language and I don't remember seeing a geometry application. > You don't have anything final. Why don't you just come up with > a final end user product, release it and then show rave reviews > from users. > xcas is perfectly usable. It has a complete French documentation. It's not a commercial soft, I don't need to make a formal release. It has always worked that way with Erable for the 48. The main current advantage of formulae1 is that people can use it on their zaurus without installing X, and you did more advertising so that people know about it. <3D7CED8A.1030605@nospam.fourier.ujf-grenoble.fr> <3D7CF0ED.6548@SPAMpoliplus.com> <3D7D90B4.8080002@nospam.fourier.ujf-grenoble.fr> <3D7E0110.324F@SPAMpoliplus.com> <11624751.0209102319.251106c8@posting.google.com> <3D7F9A39.7775@SPAMpoliplus.com> <3D803773.7060802@nospam.fourier.ujf-grenoble.fr> <3D80A2AD.4AD6@SPAMpoliplus.com> ==== > Why is this thread turning into flamewar? -- ----- .82a fait 5 jours que je pose des questions, je n'ai aucune r.8eponse, .88 part des remontrances. Vous r.8epondez de bonne foi ou vous passez ! Ce que vous pensez n'a pas d'int.8er.90t, r.8epondez-y seulement... -+- Joe in: Guide du Neuneu d'Usenet - Ze veux z.8e z.8exige -+- Reply-To: G Savage ==== > Why is this thread turning into flamewar? In American-English it's called: ego. GS ==== Wrong again. we have implemented limits on the previous WinCE version > but took it out of this initial Zaurus/PocketPC release. > I really wonder why you decided to remove the limit instruction if you had it on wince. Is it a commercial decision to propose buyers of the first version another version and get some $? Irrelevant of cost, you concluded our stuff was crap (not advanced) > without even trying it, based only on the lack of limits and then > you went already to praise your own system. I won't bother trashing > your program but I am sure our software does a lot of things your > software doesn't and vice-versa. > Not that advanced does not mean crap. Of course there are some features that xcas does not do currently (like solve with abs, sqrt and inequalities or step-by-step), but that will be much easier to fix than it will be for formulae1 if you want to be on par with xcas features. > Also Powerful, like beauty, is on the eye of the beholder. When it > comes to learning math and seeing how something was solved, Formulae 1 > is one of the most powerful programs of its kind out there. Definitively > worth $30. > I don't contest it might be good for learning maths. I contest your denomination of advanced and pointed to xcas which has more advanced CAS features. > Now you should compare your free xcas system with Maxima which is also > free and also runs on Zaurus. Now let's see how powerful xcas does > against Maxima. > Yes, let's compare with maxima. Maxima sure has some features xcas does not have, because it's a 30 years old program. But it has been almost idle during 20 years, hence does not use any of the advanced algorithms found in CAS research during 20 years. For example, maxima uses l'Hopital rules and series expansion only to solve limit, you can check the message board and see that it fails on some not so complicated exemples. Who will implement mrv? Did you have a look at maxima source code to see how bright the future of maxima is? > If our customers request such features, we will certainly implement > them. That's for sure. But keep in mind that we favour ease of use > and math learning to complicated systems when you have to learn the > system instead of learning math. We are going after the general > public and not the technical-lords ;) > Are you sure you are not offering a crippled CAS with an emphasis on some points of the highschool curriculum (in the US)? ==== Wrong again. we have implemented limits on the previous WinCE version > but took it out of this initial Zaurus/PocketPC release. > I really wonder why you decided to remove the limit instruction > if you had it on wince. Is it a commercial decision to propose > buyers of the first version another version and get some $? This was already covered on a previous post. Check it out, I won't bother repeating it here. Our policy is to provide free upgrades for minor version numbers (1.0.1, 1.2, 1.3) and only charge a small upgrade fee for major version numbers (2.0, 3.0, etc). The decision had nothing to do with trying to rip off current customers. Our next feature release (aside from bug fixes) will be in 4/5 months and it will be for a minor version. Irrelevant of cost, you concluded our stuff was crap (not advanced) > without even trying it, based only on the lack of limits and then > you went already to praise your own system. I won't bother trashing > your program but I am sure our software does a lot of things your > software doesn't and vice-versa. > Not that advanced does not mean crap. Of course there are some > features that xcas does not do currently (like solve with abs, > sqrt and inequalities or step-by-step), but that will be much Ease or not, every highschool textbook completely covers solving simple equations with sqrt, abs and sometimes even inequalities so we consider this a MUST have feature for high schools and above. A solve without these is not a very complete solve. The fact IS for me and you (CAS implementors) everything math related is EASY to implement !!! > easier to fix than it will be for formulae1 if you want to be on > par with xcas features. We are not competing with xcas. Our steps are phenomenal and will continue to get better and you simpy don't have that functionality in xcas since you are not going after the same people we are. > Also Powerful, like beauty, is on the eye of the beholder. When it > comes to learning math and seeing how something was solved, Formulae 1 > is one of the most powerful programs of its kind out there. Definitively > worth $30. > I don't contest it might be good for learning maths. I contest your > denomination of advanced and pointed to xcas which has more advanced > CAS features. Not when it comes to step-by-step features. We are very advanced here. For example in Formulae 1 you can type : int(1/(x-sqrt(x)),x) and press step to get intVarSub(integral, u=sqrt(x)) which basically says that this integral is solved by the substitution u=sqrt(x). You can continue to press step to see all of other techniques it used to solve this integrals. You just don't get that from any other CAS (with the exception of Mathpert). When learning integration, it is nice to see which one of the taught integration techniques is used to solve a particular integral; and that is what we provide to users. Pretty advanced functionality, if it was easy you would have already implemented in xcas. > Now you should compare your free xcas system with Maxima which is also > free and also runs on Zaurus. Now let's see how powerful xcas does > against Maxima. > Yes, let's compare with maxima. Maxima sure has some features xcas > does not have, because it's a 30 years old program. But it has been > almost idle during 20 years, hence does not use any of the advanced > algorithms found in CAS research during 20 years. For example, maxima > uses l'Hopital rules and series expansion only to solve limit, you > can check the message board and see that it fails on some not so > complicated exemples. Who will implement mrv? Did you have a look > at maxima source code to see how bright the future of maxima is? This is not a comparison, this is just your excuse not to compare it when it comes to solving problems in one step. Why don't you grab a copy of Webster's Tests and see how xcas does against Maxima and the other one-shot big CASs. Now that's a comparison of math capabilities. xcas implements mrv, maxima doesn't. What about everything else Maxima implements that xcas doesn't. > If our customers request such features, we will certainly implement > them. That's for sure. But keep in mind that we favour ease of use > and math learning to complicated systems when you have to learn the > system instead of learning math. We are going after the general > public and not the technical-lords ;) > Are you sure you are not offering a crippled CAS with an emphasis > on some points of the highschool curriculum (in the US)? Cripped CAS ? You just admitted that your CAS is not able to solve simple high school equations with abs and sqrt. Now that is a cripped solve command. Oh now our CAS is crippled because of the US curriculum. This is getting pathetic. Math is math, we have more user's of the Zaurus version in Europe than in the US. and most of the enthusiasm is from Europe. Notice that we left user's comments verbatim (non edited). Europeans are loving Formulae 1 too. ==== > Not when it comes to step-by-step features. We are very advanced here. Sorry, I don't consider that advanced at all (after all the advanced stuff that has already been implemented, step-by-step is easy to implement, it's just that we don't have any motivation to implement it). Besides, it is very likely to get your CAS banned from examinations. > When learning integration, it is nice to see which > one of the taught integration techniques is used to > solve a particular integral; and that is what we > provide to users. It can be useful when learning on your own, but: 1. All those silly integration tricks should be thrown out of the curriculum anyway, and 2. If you're not sure how to solve a problem, just ask a teacher or mentor (and practise, practise, practise!) > Pretty advanced functionality, > if it was easy you would have already implemented > in xcas. -- we have better things to do. My $0.02, Bhuvanesh. ==== Not when it comes to step-by-step features. We are very advanced here. > X > It can be useful when learning on your own, but: X > -- we have better things to do. But eventually you also are gonna implement it. Right?! I like the idea of a special SbS mode. I wish that it could be turned on and off for only M) Matrix operations P) Polynomial operations D) Differential operations S) Solving O) Other operations And if you have something to add be free to do so. I'd like to see this in HP 49 CAS, xcas and F1. ==== > -- we have better things to do. But eventually you also are gonna implement it. > Right?! Are you asking me? I'm certainly not going to implement it. > I like the idea of a special SbS mode. I still don't see it as useful enough to be worth spending time to implement, but maybe I'm just abnormal. In my view, these CAS's should be used once you have mastered the basic concepts and can solve problems on paper. > And if you have something to add be free to do so. > I'd like to see this in HP 49 CAS, xcas and F1. Well, you might be able to implement it in the HP49G CAS once it becomes open-source :) I think B.P. is planning to implement it in XCas too, sometime in the future. -- Bhuvanesh ==== > Not when it comes to step-by-step features. We are very advanced here. Sorry, I don't consider that advanced at all Your opinion, I do. > (after all the advanced stuff that has already been implemented, > step-by-step is easy to implement, Really. How did you figure that out ? Let's take for example xcas partial risch integration algorithm implementation. Hard to implement the full algorithm isn't it. but tell me how implementing that makes step-by-step easy ? You just have to use completely different algorithms here. One for one-shot answers and another for steps. You don't have implemented any sort of decent step-by-step feature so how can you say it is easy ? I might look easy, just like it seems easy to implement the full risch algorithm but actually there isn't one full implementation of it; Not even Maple or Mathematica. My point is, it looks easy until you try to do a nice job of it; The devil is in the detail. > it's just that we don't have any motivation to implement > it). Besides, it is very likely to get your CAS banned from > examinations. Sure. We are not trying to develop software to help students cheat on examination. Our software is meant to help students learn and strength their math skills. > When learning integration, it is nice to see which > one of the taught integration techniques is used to > solve a particular integral; and that is what we > provide to users. It can be useful when learning on your own, but: > 1. All those silly integration tricks should be thrown out of the > curriculum anyway, and Your opinion, I find them very important and apparently so every major Calculus textbook author. > 2. If you're not sure how to solve a problem, just ask a teacher or > mentor (and practise, practise, practise!) So you can't use software to help the learning process. This is just another tool to use to improve a student's math skills. > Pretty advanced functionality, > if it was easy you would have already implemented > in xcas. -- we have better things to do. That goes to show that we are targeting different markets. Step-by-step is a priority for us and our main key differentiating factor. Carlos. My $0.02, > Bhuvanesh. ==== > just like it seems easy to implement the full risch algorithm When did I say it was easy to implement the full Risch algorithm? > Sure. We are not trying to develop software to help > students cheat on examination. Our software is meant to > help students learn and strength their math skills. I agree that it might help some students, but only when they are on their own. > It can be useful when learning on your own, but: > 1. All those silly integration tricks should be thrown out of the > curriculum anyway, and Your opinion, I find them very important and apparently so every > major Calculus textbook author. Yes, my opinion, of course. Well, all I want to say is that those -- Bhuvanesh ==== [lot of anger post deleted] Mr Bazzarella, it would be good instead of flaming all the other posters that you answer the only questions that matters here, and which you have carefully avoided: That is: in the example Mr Parisse has given, how do you perform? If your CAS is that advanced, I'm sure it will be easy for you to give different examples that you would like other people to try and compare because you believe that they can't solve it while your system can. If you don't and you keep posting with a lot of anger and passion, you will just make people fed-up with your posts and they will disregard your opinion in every matters, which would be very sad. So yes you can do step-by-step in a useful manner (unlike the HP49 which often shows step that are totally useless for a student), but what matters at the end is what you can or can't do. Most of the CAS out-there have been top-selling CAS without providing s-b-s features. To summarize: stop acting like a politician, ignoring questions and repeating always the same thing over and over ==== > [lot of anger post deleted] the one you mentioned. If you said Passion than I could easily understand... must be all of that latino blood in me :) > Mr Bazzarella, it would be good instead of flaming all the other posters > that you answer the only questions that matters here, and which you have > carefully avoided: That is: in the example Mr Parisse has given, how do you perform? I haven't flamed anybody, on the contrary, I've been very polite but passionate. The only questions that matter here are the only questions that matter to you, Parisse and the xcas team but these questions don't matter to me as I previously stated. I've put out several of the questions I view important and they weren't answered either. More evidence that we are not doing the same thing. > If your CAS is that advanced, I'm sure it will be easy for you to give > different examples that you would like other people to try and compare > because you believe that they can't solve it while your system can. If you don't and you keep posting with a lot of anger and passion, you will > just make people fed-up with your posts and they will disregard your opinion > in every matters, which would be very sad. No anger just passion... I am not a fighter, I am a lover :) But you made a very good point and I believe this thread is over and I won't post any more. > So yes you can do step-by-step in a useful manner (unlike the HP49 which > often shows step that are totally useless for a student), but what matters > at the end is what you can or can't do. Most of the CAS out-there have been > top-selling CAS without providing s-b-s features. This is another great point. You are so right and there are some many different CASs that pretty much do the same thing one form or another. Don't you think future CASs should evolve to do things that other previous CASs can't ? I do and then I ask myself, what else can we do in a CAS nowadays with so much CPU cycles available for extra processing. What I came up with was step-by-step and then step-by-step with complete written explanations and then step-by-step with dynamically generated animations and explanations. If Formulae 1 and Mathpert do well, future CASs will need to have these features to sell well since users will be expecting them. > To summarize: stop acting like a politician, ignoring questions and > repeating always the same thing over and over I promise to do so if you, Parisse and xcas team do the same. Carlos. ==== The only questions that matter here are the only questions that matter > to you, Parisse and the xcas team but these questions don't matter > to me as I previously stated. I've put out several of the questions > I view important and they weren't answered either. More evidence that > we are not doing the same thing. > I have answered to your questions I believe. The fact that xcas has currently no step by step means that your question about can xcas show the steps to solve int(...) irrelevant. On the other hand you did not answer to any benchmarks I proposed,despite the fact you could, because the benchmarks I proposed were about factorization, matrix inversion and integration of a rational fraction, all instructions that are available in formulae 1 as I understand. I'm afraid it means that formulae 1 does not solve them very fast and that it might never be a priority for formulae1 to improve in this area. This is another great point. You are so right and there are some many > different CASs that pretty much do the same thing one form or another. > Don't you think future CASs should evolve to do things that other > previous CASs can't ? I do and then I ask myself, what else can we > do in a CAS nowadays with so much CPU cycles available for extra > processing. What I came up with was step-by-step and then step-by-step > with complete written explanations and then step-by-step with dynamically > generated animations and explanations. > I agree that CAS should provide new possibilities. Step by step is one of them, but that should not be contrary to efficiency. I don't want to have a learning CAS on a handheld, and another one on a desktop. I want to have the same CAS on both, and I want to be able to solve as many problems as possible on the PDA. Now if I had to describe a difference between xcas and standard cas like maple or mupad etc., then I would say that giac/xcas following GiNaC provides a library that programmers can use inside their C++ program. With maple or mupad you can only use external libraries *inside* the maple/mupad interface. With giac, you don't need to learn another programming language, you just need to learn the library functions names. ==== The only questions that matter here are the only questions that matter > to you, Parisse and the xcas team but these questions don't matter > to me as I previously stated. I've put out several of the questions > I view important and they weren't answered either. More evidence that > we are not doing the same thing. > I have answered to your questions I believe. The fact that xcas has > currently no step by step means that your question about can xcas > show the steps to solve int(...) irrelevant. Also the fact that we don't have limits would imply we can't evaluate the huge list you submitted. > On the other hand > you did not answer to any benchmarks I proposed,despite the fact > you could, because the benchmarks I proposed were about factorization, > matrix inversion and integration of a rational fraction, all > instructions that are available in formulae 1 as I understand. > I'm afraid it means that formulae 1 does not solve them very fast > and that it might never be a priority for formulae1 to improve in > this area. > This is another great point. You are so right and there are some many > different CASs that pretty much do the same thing one form or another. > Don't you think future CASs should evolve to do things that other > previous CASs can't ? I do and then I ask myself, what else can we > do in a CAS nowadays with so much CPU cycles available for extra > processing. What I came up with was step-by-step and then step-by-step > with complete written explanations and then step-by-step with dynamically > generated animations and explanations. > I agree that CAS should provide new possibilities. Step by step is > one of them, but that should not be contrary to efficiency. I don't > want to have a learning CAS on a handheld, and another one on a > desktop. I want to have the same CAS on both, and I want to be able > to solve as many problems as possible on the PDA. Now if I had to > describe a difference between xcas and standard cas like maple or > mupad etc., then I would say that giac/xcas following GiNaC provides a > library that programmers can use inside their C++ program. With maple > or mupad you can only use external libraries *inside* the maple/mupad > interface. With giac, you don't need to learn another programming > language, you just need to learn the library functions names. ==== Also the fact that we don't have limits would imply we can't > evaluate the huge list you submitted. Re-read my post. The point was not to get benchmarks about limits which would of course be irrelevant for formulae 1. It was that coding a complete limit instruction was not easy at all. The benchmarks I was speaking are factor(x^100+1) inv(ranm(15,15)) int(1/(x^4-1)^10,x) none require limit <3D7CED8A.1030605@nospam.fourier.ujf-grenoble.fr> <3D7CF0ED.6548@SPAMpoliplus.com> <3D7D90B4.8080002@nospam.fourier.ujf-grenoble.fr> <3D7E0110.324F@SPAMpoliplus.com> <3D7EE619.1060705@nospam.fourier.ujf-grenoble.fr> <3D7FA72C.2E7C@SPAMpoliplus.com> <662e00ed.0209120939.782969f6@posting.google.com> <3D80C4FC.6B04@SPAMpoliplus.com> <3d8144db$1@duster.adelaide.on.net> <3D81EA9F.6786@SPAMpoliplus.com> <3D8202B0.7030101@pasdespam.wanadoo.fr> <3D820EA1.813@SPAMpoliplus.com> <3D822172.9040706@pasdespam.wanadoo.fr> ==== Here are some timings with Derive on my single speed (7.91 MHz) HP200LX, still an old DOS machine with a 16 bits CPU and no more than 640k of RAM... Also the fact that we don't have limits would imply we can't > evaluate the huge list you submitted. Re-read my post. The point was not to get benchmarks about limits > which would of course be irrelevant for formulae 1. It was that > coding a complete limit instruction was not easy at all. > The benchmarks I was speaking are > factor(x^100+1) 2.2 seconds to get: (x^4+1)(x^16-x^12+x^8-x^4+1)(x^80-x^60+x^40-x^20+1) Not bad. > inv(ranm(15,15)) 7.9 seconds to create the matrix(random(i+1)-random(j+1), i, 15, j, 15), and 63.3 seconds to inverse it. Some Garbage Collections have occurred, and about 30% of the free memory have been eaten (and released after). Too long, and impractical, since the result cannot be displayed properly, and there's no matrix editor. > int(1/(x^4-1)^10,x) 19.6 seconds to get a long: 15646785.atan(x)/67108864 - 15646785.ln((x-1)/(x+1))/134217728 + x(46940355.x^32-402345900.x^28+1521599040.x^24-3324596364.x^20+4608419886.x^ 16-4177677924.x^12+2449584536.x^8-874703844.x^4+161168823)/(301989888(1-x^4)^ 9) Not bad, but the result seems useless. -- ----- Judge Thomas Penfield Jackson on Bill Gates: He has a Napoleonic concept of himself and his company, an arrogance that derives from power ==== How about the Numeric/Approx Matrix Inversion Test? RANM with float elements in the range -9. to +9. 4x4, 8x8, 16x16, 32x32, 64x64, how high can you go? Is there a memory and/or (practical) time limit? > Here are some timings with Derive on my single speed (7.91 MHz) > HP200LX, still an old DOS machine with a 16 bits CPU and no more than 640k > of RAM... <3D7CED8A.1030605@nospam.fourier.ujf-grenoble.fr> <3D7CF0ED.6548@SPAMpoliplus.com> <3D7D90B4.8080002@nospam.fourier.ujf-grenoble.fr> <3D7E0110.324F@SPAMpoliplus.com> <3D7EE619.1060705@nospam.fourier.ujf-grenoble.fr> <3D7FA72C.2E7C@SPAMpoliplus.com> <662e00ed.0209120939.782969f6@posting.google.com> <3D80C4FC.6B04@SPAMpoliplus.com> <3d8144db$1@duster.adelaide.on.net> <3D81EA9F.6786@SPAMpoliplus.com> <3D8202B0.7030101@pasdespam.wanadoo.fr> <3D820EA1.813@SPAMpoliplus.com> <3D822172.9040706@pasdespam.wanadoo.fr> ==== > How about the Numeric/Approx Matrix Inversion Test? > RANM with float elements in the range -9. to +9. > 4x4, 8x8, 16x16, 32x32, 64x64, how high can you go? 4x4: 0.7s (creation), 0.4s (inversion) 8x8: 2.5s (creation), 2.6s-11.3s (inversion) 16x16: 9.0s-13s (creation), 82.7s-96.1s (inversion) 32x32: 38.3s (creation), aborted the test after a loooong time, when I saw that it was constantly doing GC operations, with 5% free memory. The creation step consists of simplifying the expression: matrix(random(i+1)-random(j+1),i,16,j,16) for a 16x16 matrix. The time taken for an operation can vary depending on the free memory, as Derive performs some Garbage Collection when needed. For example, during the inversion of the 16x16 matrix, 7 to 9 GC occurred, each taking 4 to 5 seconds. When necessary (and practical), I've performed the same test several times, and taken the best and worst time for each. I won't do it again for the 32x32 matrix. I've performed the test with Exact and Approximate precision (except for the 32x32). The timings were approximately the same in both settings, but the memory taken in the Approximate setting is lower. The memory taken by the 4x4 and 8x8 tests is negligible. The free memory indicator after the 16x16 test is about 80%. > Is there a memory and/or (practical) time limit? There's a memory limit for sure, as the machine has only 640k of RAM. I don't know if Derive 4.11 for DOS can use EMM, it would surely help. The practical limit (time) is around the 16x16. Such matrices take some time to create, manipulate, and display. But the fact that you can use the same exact program on a more powerful PC and make use of the extended memory is nice. For example, Here are the timings in exact mode on a Celeron 333, with 64MB RAM, under Windows98: 4x4: 0.0s 8x8: 0.1s 16x16: 0.2s 32x32: 4.1s 64x64: 149.0s Of course you can't have that kind of PC always with you, but slightly less powerful ones are available (Toshiba Libretto for example). -- ----- animation, mais le machin auromatique MAJORDOMO me renvoit toujours la m.90me foutu page d'instruction de code. Comment ca marche ? -+- W in Guide du Neuneu d'Usenet : Mauvais abonn.8e, changer d'abonn.8e -+- ==== How about the Numeric/Approx Matrix Inversion Test? > RANM with float elements in the range -9. to +9. > 4x4, 8x8, 16x16, 32x32, 64x64, how high can you go? 4x4: 0.7s (creation), 0.4s (inversion) > 8x8: 2.5s (creation), 2.6s-11.3s (inversion) > 16x16: 9.0s-13s (creation), 82.7s-96.1s (inversion) > 32x32: 38.3s (creation), aborted the test after a loooong time, when I saw > that it was constantly doing GC operations, with 5% free memory. X > But the fact that you can use the same exact program on a more powerful PC > and make use of the extended memory is nice. For example, Here are the > timings in exact mode on a Celeron 333, with 64MB RAM, under Windows98: > 4x4: 0.0s > 8x8: 0.1s > 16x16: 0.2s > 32x32: 4.1s > 64x64: 149.0s Of course you can't have that kind of PC always with you, but slightly > less powerful ones are available (Toshiba Libretto for example). X So my best timings on a HP 49G shows that the HP 200LX Derive is both slower and can't handle big matrices :-( HP 49G size elements bytes time 4 x 4 ( 16) =128B : 0.7_s 8 x 8 ( 64) =1/2 K : 3_s 16 x16 (256) = 2 K : 16_s 32 x32 (1024) = 8 K : 96_s = '1_min+36_s' 64 x64 (4096) =32 K : 655_s='10_min+55_s' CONCLUSION: I think I need xcas on my HP Jornada 720 Can anybody deliver an executable for it ?! Veli-Pekka PS. TI 89 numbers were (surprisingly similar with the HP 200LX): 4x4: 1.1 s 8x8: 8.2 s 16x16: 81.7 s 32x32: Out of memory 64x64: Out of memory ==== > > How about the Numeric/Approx Matrix Inversion Test? > > RANM with float elements in the range -9. to +9. > > 4x4, 8x8, 16x16, 32x32, 64x64, how high can you go? 4x4: 0.7s (creation), 0.4s (inversion) > 8x8: 2.5s (creation), 2.6s-11.3s (inversion) > 16x16: 9.0s-13s (creation), 82.7s-96.1s (inversion) > 32x32: 38.3s (creation), aborted the test after a loooong time, when I saw > that it was constantly doing GC operations, with 5% free memory. > X > But the fact that you can use the same exact program on a more powerful PC > and make use of the extended memory is nice. For example, Here are the > timings in exact mode on a Celeron 333, with 64MB RAM, under Windows98: > 4x4: 0.0s > 8x8: 0.1s > 16x16: 0.2s > 32x32: 4.1s > 64x64: 149.0s Of course you can't have that kind of PC always with you, but slightly > less powerful ones are available (Toshiba Libretto for example). > X > So my best timings on a HP 49G shows that the HP 200LX Derive > is both slower and can't handle big matrices :-( > HP 49G > size elements bytes time > 4 x 4 ( 16) =128B : 0.7_s > 8 x 8 ( 64) =1/2 K : 3_s > 16 x16 (256) = 2 K : 16_s > 32 x32 (1024) = 8 K : 96_s = '1_min+36_s' > 64 x64 (4096) =32 K : 655_s='10_min+55_s' For comparison, in Mathematica (running on a 500MHz Windows2000 machine): In[1]:= mat = N[Table[Random[Integer,{-9,9}], {i,16}, {j,16}]]; In[2]:= Timing[Inverse[mat]][[1]] Out[2]= 0. Second In[3]:= mat = N[Table[Random[Integer,{-9,9}], {i,64}, {j,64}]]; In[4]:= Timing[Inverse[mat]][[1]] Out[4]= 0. Second In[5]:= mat = N[Table[Random[Integer,{-9,9}], {i,256}, {j,256}]]; In[6]:= Timing[Inverse[mat]][[1]] Out[6]= 0.181 Second In[7]:= mat = N[Table[Random[Integer,{-9,9}], {i,1000}, {j,1000}]]; In[8]:= Timing[Inverse[mat]][[1]] Out[8]= 6.89 Second -- Bhuvanesh ==== > For comparison, in Mathematica (running on a 500MHz Windows2000 machine): In[1]:= mat = N[Table[Random[Integer,{-9,9}], {i,16}, {j,16}]]; In[2]:= Timing[Inverse[mat]][[1]] Out[2]= 0. Second In[3]:= mat = N[Table[Random[Integer,{-9,9}], {i,64}, {j,64}]]; In[4]:= Timing[Inverse[mat]][[1]] Out[4]= 0. Second In[5]:= mat = N[Table[Random[Integer,{-9,9}], {i,256}, {j,256}]]; In[6]:= Timing[Inverse[mat]][[1]] Out[6]= 0.181 Second In[7]:= mat = N[Table[Random[Integer,{-9,9}], {i,1000}, {j,1000}]]; In[8]:= Timing[Inverse[mat]][[1]] Out[8]= 6.89 Second Do you know what kind of algorithm is used? These timings are very good. I would guess modular algorithms... ==== >>Do you know what kind of algorithm is used? These timings >>are very good. I would guess modular algorithms... > Doesn't seem like it... LUDecomposition, Inverse, RowReduce and Det use Gaussian elimination > with partial pivoting. Of course, it also depends on the internal arithmetic implementation > to some extent. Gauss is O(N^3) assuming you have constant size coefficients which is not the case here. Even if you assume that the best algorithms are used for arithmetic, the size of a multiplication of p bits time p bits is O(p ln(p)) using FFT and here the size of the coeff increase linearly (p=cst*N), we should expect O(N^4*ln(N)) timings, you give timings 6.9 s for N=1000 and 0.181s for N=256 which correspond to less than O(N^3). Therefore there must be some other algorithm involved (but which?) or there is a misunderstanding on the initial problem which was to compute all coeffs of the exact inverse of a matrix with random integer coefficients in a range (-9..9 on calcs, I used -99.99 on xcas) (note that I don't understand mathematica weierd notation) ====