# Scaling log scale to fit between 0 and 1.41 "normalized device coordinates" length

I have posted the following on another forum.
Since it is both math and OpenGL I am taking the liberty and posting it here too.

I am constructing / drawing Smith chart using OpenGL (C programming language )
I am using normalized scale circles with diameter from 0 to 1.
I can draw 10 of these circles in log(10) scale - from 0 to 1 - in .1 intervals - no problem.
Now I need draw 10 of these circles , BUT they have to be scaled to fit into linear area from 0 to 1.41,

Added specially here on OpenGL forum

**The (+_ img coordinates ) circles are centered "outside " 2x2 normalized device coordinates square and I have no problem drawing them. Just the scale is wrong. I actually will use only “stenciled” parts inside **
normalized device coordinates unity circle.

So in layman’s terms - how do I scale log(0) - log(1) to log(0) - log(1.41) and maintain logarithmic scale?
I did try
double mark = -(log(index ));
mark *= 1.41;
but it "linearized / destroyed ’ the overall logarithmic scale of the circles and did not fill 0 to 1.41 linear scale. .
I need to scale each circle and have them in logarithmic succession in same ratio as log 0 to log 1.

PS OpenGL /C handles the log(0) just fine.

Not sure what do you need to do, and what linear area you mean, but according to the formulae you wrote, you might need multiplying index by 1.41. Or dividing it by that value, and providing more indices.

Yes, I realize I am having hard time explaining this.
Let me try this approach
I have a (linear) stick 1 unit long .
I want to have 10 log scale marks on this stick
simple -log( .1)… -log(.2) … - log (1)
gives me logarithmic scale - from “long” marks to shorter ones.

Now do (compute) same for stick 1.41 unit long.
-log(.141) obviously is NOT correct answer.
Neither is adding SAME log value to each mark.
I end up with linearly incremented log scale.