Complex formula on a DM42 with DB48X

Sdílet
Vložit
  • čas přidán 22. 08. 2024
  • This upload is in response to • I tried solving a long... . Challenge accepted! I wanted to see how well DB48X did.
    I think that it does pretty well: you get the benefits of RPN entry in terms of how fast you go, but then you get the formula along the way, ensuring that you see what you are doing.
    48calc.org

Komentáře • 19

  • @grbrum
    @grbrum Před 5 měsíci +4

    Wow. This is spectacular

  • @coolfrost6
    @coolfrost6 Před 5 měsíci +4

    I will just say that your work on the DB48X software is truly amazing, and i'm getting more and more tempted to buy swiss micro just to try it. of only swiss made a real 48 keyboard layout

    • @threadripper979
      @threadripper979 Před 5 měsíci

      No 48, no care

    • @christophe3d
      @christophe3d  Před 5 měsíci +1

      At this point, I think that the keyboard layout on the DM42 for DB48X is more effective than the layout on the HP48. It's not compatible, so if you have programs that take key addresses, that won't work. But in terms of daily operations, it's superior to the HP48, and vastly superior to the HP50. Notably thanks to the ToolsMenu key.

    • @SchnellHASE
      @SchnellHASE Před 14 dny

      ​​@@christophe3daren't there fraction support on DM42 and 32? Isn't it better to consider HP Prime G2 until full release of DB48X? Isn't HP Prime G2 buggy?

    • @christophe3d
      @christophe3d  Před 12 dny +1

      @@SchnellHASE Fraction support does not exist on DM42 that I know of. On DM32, FDISP displays a fractional approximation of a decimal value on the stack. You don't have true fractions inside. There is a limit on the denominator (4096 by default IIRC). By contrast, in DB48X, if you divide 1 million by 999999, the display shows 1 and 1/999999. If you multiply that by 333333, you get 333333 1/3. The computation remains exact.
      The difference is particularly noticeable when operating on matrices. Try for example to enter [[1 2 3][4 5 6][7 8 9]] then 1/x. You get a "Divide by zero" on DB48X, but the HP48, Free42 and I believe the DM42 (did not check) compute the determinant as being a small value, and will let you invert the matrix.
      As for whether you should consider the HP Prime G2, I'd say that's really a matter of taste. The HP Prime has an HP-quality keyboard, a color display, is very fast, and has a pretty beefy CAS system. It support Python and has its own "structured" programming language. On the other hand, it is a closed, non-evolving system. It has no true function keys (you have to use a touch screen without tactile feedback). There are multiple distinct modes, so that the CAS and the RPN mode cannot interact comfortably. It does not support arbitrary-precision integer and decimal values, nor arbitrary bases. It does not have true support for phasors (complex numbers in polar representation), limited support for fractions if not in CAS mode, no way to program it "keystroke style" or "RPN style". Its RPN mode is so deficient that if there is a "SWAP" command on the keyboard, I never found it.
      Prime G2 is not as much "buggy" as "totally closed and limited by design". It's a calculator designed after the "calculator control laws" that required an exam mode with very strict limitations. As soon as these laws passed, HP could no longer finance the development of obscure features for adult engineers by leveraging the cash flow from students who were almost forced to buy calculators. They had to target students rather than engineers, and their calculators became more focused on learning math than on using math. The Prime is a prime example of that philosophy.

    • @SchnellHASE
      @SchnellHASE Před 12 dny +1

      @@christophe3d
      I haven't had the chance to use an RPN-style calculator before, but seeing how you leverage the DB48X for engineering tasks, it's clear that it significantly speeds up calculations. I'm starting to think I should get one to experiment with building my own logical systems, like type theory or set theory. Do you use interpreters such as LLVM to optimize C++ performance on the DB48X?
      Also, is it feasible to create a custom calculator on the HP Prime similar to what you did on the DM42? I'm concerned that Python might be too slow for my needs, and I'm looking to utilize more powerful languages like Haskell, Agda, or even C++.

  • @JohnUsp
    @JohnUsp Před 2 měsíci +1

    Excellent, keep going.

  • @jmfd15
    @jmfd15 Před 5 měsíci +3

    C’est magnifique! Merci beaucoup 🎉🎉

  • @duncanmurray6587
    @duncanmurray6587 Před 3 měsíci

    that's amazing

  • @willwong4804
    @willwong4804 Před 3 měsíci

    Fantastic work! I’m a close follower of your DB48X project and am about to buy a third DM42 dedicated to your iterations. This demo, along with your presentation “How much math can be put in 700k,” triggered a question: can CAS be implemented within the rest 200k? One example would be solving complex indefinite integration.

    • @christophe3d
      @christophe3d  Před 3 měsíci

      Well, there are already some basic elements of the CAS system, like algebraic parsing and rendering. The release I just made minutes ago (0.7.5) now implements the ↑Match and ↓Match commands in a way that is pretty similar to what the HP48 does, as well as a polynomial type, with polynomial addition, subtraction, multiplication and Euclidean division and remainder. This will be the basis for a correct implementation of things like `FACTOR`, etc.
      To answer your question: I am not sure exactly how far I can get on the DM42. Time will tell.

  • @johan0234523
    @johan0234523 Před 5 měsíci +2

    Impressive!

  • @amelted
    @amelted Před 5 měsíci +1

    how does it perform with functions like natural log, trig functions, etc

    • @christophe3d
      @christophe3d  Před 5 měsíci +1

      Like for the rest. They are implemented, they work in arbitrary precision and complex numbers, and they work in symbolic math.

  • @grbrum
    @grbrum Před 5 měsíci +1

    Can you add ‘x’ to the calculation and solve for ‘x’?

    • @christophe3d
      @christophe3d  Před 5 měsíci +1

      Yes, though only numerical solving at the moment. As a matter of fact, you see me use a '() key to enter sqrt(2) in symbolic form, so as to keep the whole formula symbolic until the end. Otherwise, it would compute it numerically.