Git Product home page Git Product logo

Comments (7)

davidedc avatar davidedc commented on August 24, 2024

Hi Phi,

thanks! I love Geometor, beautiful work.

I'm in the middle of launching another project but I'd love to have a chat...

If you want to send me some contact details via my Contact page ( http://www.davidedc.com/contact/ ) we could try to arrange a call or something.

(P.S. The Root 3 B link doesn't seem to work at the moment)

from algebrite.

phiarchitect avatar phiarchitect commented on August 24, 2024

Thank you. I feel that I am just uncovering the beauty that is already there. These constructions are just the beginning of what I have been researching. There is so much more to demonstrate. I think it will amaze everyone. It is amazing me - that is why I am pretty much dedicating my life to this pursuit.

I will send a separate email with contact info. I think an initial conversation would be great.

All the best.

  • Phi

PS - I forgot to push the Root-3-b yesterday. It is there now. http://i-am-phi.net/geometor-explorer/root3-b.html

from algebrite.

phiarchitect avatar phiarchitect commented on August 24, 2024

sorry - getting used to github.

from algebrite.

davidedc avatar davidedc commented on August 24, 2024

adding what line 12 is. Phi, you are saying that its expression is not "simplified enough" or rather is it simplified incorrectly?

What would you expect that expression to be?

screen shot 2018-01-30 at 15 38 31

from algebrite.

phiarchitect avatar phiarchitect commented on August 24, 2024

I apologize if my terminology is not correct - I am fairly new to this vocabulary :)

Line 12 is derived from points 39 & 44 (two highlighted points on circle 11 below) - which would make it parallel to Line 4. But the values are causing Line 12 and the related intersection points to occur in the wrong places. (But it does appear the y-intercept is in the correct place.)

screenshot 2018-01-30 09 15 08

Line 4 has m = -3^(1/2)
Line 12 has m = -3^(1/2) 5^(1/2) / (4 (1/4 + 1/4 5^(1/2))) - 3^(1/2) / (4 (1/4 + 1/4 5^(1/2)))

point 39:

   x: -1/2 5^(1/2)
  xVal: -1.11803
     y: 0
  yVal: 0
  * parents: 2
    0 :	line
    11 :	circle

point 44:

     x: 1/4 - 1/4 5^(1/2)
  xVal: -0.309017
     y: -1/4 3^(1/2) - 1/4 3^(1/2) 5^(1/2)
  yVal: -1.40126
  * parents: 2
    6 :	line
    11 :	circle

here is the rundown on Line 12

      a: 1/4 3^(1/2) + 1/4 3^(1/2) 5^(1/2)
      b: 1/4 + 1/4 5^(1/2)
      c: 5/8 3^(1/2) + 1/8 3^(1/2) 5^(1/2)
     eq: 1/4 y + 5/8 3^(1/2) + 1/4 3^(1/2) x + 1/8 3^(1/2) 5^(1/2) + 1/4 3^(1/2) 5^(1/2) x + 1/4 5^(1/2) y [ = 0 ]
      m: -3^(1/2) 5^(1/2) / (4 (1/4 + 1/4 5^(1/2))) - 3^(1/2) / (4 (1/4 + 1/4 5^(1/2)))
      n: -3^(1/2) 5^(1/2) / (8 (1/4 + 1/4 5^(1/2))) - 5 3^(1/2) / (8 (1/4 + 1/4 5^(1/2)))
    eq2: [ y = ] (-3^(1/2) 5^(1/2) / (4 (1/4 + 1/4 5^(1/2))) - 3^(1/2) / (4 (1/4 + 1/4 5^(1/2)))) x - 3^(1/2) 5^(1/2) / (8 (1/4 + 1/4 5^(1/2))) - 5 3^(1/2) / (8 (1/4 + 1/4 5^(1/2)))
  xRoot: (-5^(1/2) / ((3^(1/2) 5^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2)) + 3^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2))) (3^(1/2) + 3^(1/2) 5^(1/2))) - 1 / ((3^(1/2) 5^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2)) + 3^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2))) (3^(1/2) + 3^(1/2) 5^(1/2)))) y - 3^(1/2) 5^(1/2) / (2 (3^(1/2) 5^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2)) + 3^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2))) (3^(1/2) + 3^(1/2) 5^(1/2))) - 5 3^(1/2) / (2 (3^(1/2) 5^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2)) + 3^(1/2) / (3^(1/2) + 3^(1/2) 5^(1/2))) (3^(1/2) + 3^(1/2) 5^(1/2)))
  yRoot: (-3^(1/2) 5^(1/2) / ((1 + 5^(1/2)) (1 / (1 + 5^(1/2)) + 5^(1/2) / (1 + 5^(1/2)))) - 3^(1/2) / ((1 + 5^(1/2)) (1 / (1 + 5^(1/2)) + 5^(1/2) / (1 + 5^(1/2))))) x - 3^(1/2) 5^(1/2) / (2 (1 + 5^(1/2)) (1 / (1 + 5^(1/2)) + 5^(1/2) / (1 + 5^(1/2)))) - 5 3^(1/2) / (2 (1 + 5^(1/2)) (1 / (1 + 5^(1/2)) + 5^(1/2) / (1 + 5^(1/2))))
  points: 7
    point :	39
    point :	44
    point :	47
    point :	48
    point :	49
    point :	50
    point :	51

in SVG-utils.js, I started creating some check/validation functions
you can run checkLine(elements[12]) in the console and see that I am getting different values for the xRoot and yRoot for eq and eq2 depending on whether I call simplify again.

This is very much a prototype. And I am kind of guessing on how to use Algebrite. But it all works up until the point values start getting a little complex. I have a near term goal to modularize the code and separate the algebra from the rest of the construction logic.

I will try to document what I am actually doing in deriving the equations and points.

from algebrite.

davidedc avatar davidedc commented on August 24, 2024

from a high-level perspective, Algebrite should really aim at giving you always "correct" line-line and line-circle intercept(s).

we'd need to see the actual steps used... from which of the two equations you isolate the first variable ("root" should always let you do that for degrees one and two so it should always work), how you substitute the obtained expression in the second equation, and then again how you "root" the second equation (to find either the x or the y of the intercepts).

Then I guess you substitute back to obtain the other variable (again Algebrite should be fixed to always work there), then to plot the values you want numerical values out of the symbolical ones, and "float" should be fixed to always give you those (and I've dealt with bugs in "float" before, so your points might be somewhere but it could be "float"'s fault that they are not where they should be).

So Algebrite should be fixed to always cover those steps.

It's another issue altogether whether the symbolic expressions that one gets for these points are in "good enough" shape that you can then still find phi from those expressions (or ratios of distances between these points, etc.)... this could be more complex to tackle especially if along the way there are "unwieldy" surds in the denominators and nested surds... we'd need to see what ends up in those expressions...

from algebrite.

phiarchitect avatar phiarchitect commented on August 24, 2024

Closing this to clean up my issues. (If only it were that easy)

Hope you are doing well.

from algebrite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.