Software that makes placemats
Re: Software that makes placemats
Googling the problem of packing circles reveals much learned comment, and lists of best-known packings at Packomania.com. But, as posted in sci.math, the placemat software knows some to be better, most obviously that for 1607 circles on a square page. If using Bunghole-standard glasses, it would have to be a large page.
Re: Software that makes placemats
Very nice.
For smaller tastings, how about an A3 mat, guillotined lengthways (i.e 420 x 15mm), that can be placed near centre table (leaving uncluttered space for notes/meals etc.) and contain ports in an easy access row?
For smaller tastings, how about an A3 mat, guillotined lengthways (i.e 420 x 15mm), that can be placed near centre table (leaving uncluttered space for notes/meals etc.) and contain ports in an easy access row?
Rob C.
Re: Software that makes placemats
RAYC wrote:For smaller tastings, how about an A3 mat, guillotined lengthways (i.e 420 x 15mm), that can be placed near centre table (leaving uncluttered space for notes/meals etc.) and contain ports in an easy access row?
Might /BottomRow do the job?The manual wrote:There are also three simple designs, /TopRow, /MiddleRow, /BottomRow, each having everything in one row, with obvious vertical position. There is also /Sides, with the obvious meaning.
For more than a few glasses these are too cramped.
![]()
![]()
![]()
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
That would certainly leave the table uncluttered.RAYC wrote:(i.e 420 x 15mm)
Re: Software that makes placemats
Packomania.com is for geeky mathematicians, and has lots of examples of packing circles of maximal radius in various containers, including 7×10 rectangles. That is close to the proportions of A4, less a fixed margin.
Observe Packomania’s best for for 7 circles and 10 on a 7×10 rectangle:
 
I’ll implement this as two on the right (/Landscape) or top (/Portrait), reversed for /Mirror, of course, and three-row (three-column) /Diamonds for the rest. Packomania’s 10-glass solution is an epsilon better than that, but generalising the asymmetry would be too complicated. Compared to plain seven-glass /Diamonds, that adds ≈5% to the radius. PW would have wanted that for Warre versus Fonseca tasting.
What should it be called?
Observe Packomania’s best for for 7 circles and 10 on a 7×10 rectangle:
 
I’ll implement this as two on the right (/Landscape) or top (/Portrait), reversed for /Mirror, of course, and three-row (three-column) /Diamonds for the rest. Packomania’s 10-glass solution is an epsilon better than that, but generalising the asymmetry would be too complicated. Compared to plain seven-glass /Diamonds, that adds ≈5% to the radius. PW would have wanted that for Warre versus Fonseca tasting.
What should it be called?
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Software that makes placemats
Are you thinking architectural, prosaic, allusive..? I can't see anything in the pattern that would provide a short metaphorical name at present. I'm guessing it'll probably end up being something like /DiamondsPlusTwo or /DiamondsAsymmetricalSeven or something like that.
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
Current winner is ‟/DiamondsPlus”, which allows a little generalisation to something like Packomania’s 29-glass best:djewesbury wrote:/DiamondsPlusTwo

- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Software that makes placemats
I wouldn't like to be reaching for glass 16 on that placemat...
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
It’s printed on A0. Each glass can hold most of a bottle. By the time you reach glass 16, it would indeed be difficult.djewesbury wrote:I wouldn't like to be reaching for glass 16 on that placemat...
-
Glenn E.
- Cálem Quinta da Foz 1970
- Posts: 4545
- Joined: 21:27 Wed 09 Jul 2008
- Location: Seattle, WA, USA
Re: Software that makes placemats
I can think of nothing better.jdaw1 wrote:Current winner is ‟/DiamondsPlus”
Glenn Elliott
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
Ditto. Some possible insect outlines came to mind, but ‟/DiamondsPlus” is probably simpler and clearer, and therefore preferred.Glenn E. wrote:I can think of nothing better.jdaw1 wrote:Current winner is ‟/DiamondsPlus”
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Software that makes placemats
I quickly discarded /BeetleCarapacePhilW wrote:Ditto. Some possible insect outlines came to mind, but ‟/DiamondsPlus” is probably simpler and clearer, and therefore preferred.Glenn E. wrote:I can think of nothing better.jdaw1 wrote:Current winner is ‟/DiamondsPlus”
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
Step one: write code to solve a quartic equation. Worrying, I think that I have devised an algorithm as good as Brent’s Method, but simpler, and not needing a pre-chosen x-step.
Assume root bounded by LowerX and UpperX, with matching y values LowerY and UpperY. Interpolation would make the next x value be LowerX + (UpperX”“LowerX) × LowerY/(LowerY”“UpperY). This can fail for some shapes (e.g., y = x^4 ”“ c), as the interpolated value is always on the same side of the root, so only one side (say, LowerX) ever gets moved.
So instead make the next x value be LowerX + (UpperX”“LowerX) × Max[0.143, Min[0.857, LowerY/(LowerY”“UpperY) ]]
Repeat until UpperX”“LowerX ≤ Tolerance, that constant being pre-determined and small, at which time return the interpolated value (without the bounds).
When LowerX and UpperX are roughly even around the root, it interpolates. When one side is much closer, it brings in the other, moving it by a factor of 1÷0.143 ≈ 7.
FYI, the ‟0.143” constant came from a small experiment done in Excel. I do not know whether it should be precisely 1/7, or some other value. But a small non-exactitude in this would add only a tiny extra to the algorithm’s average time.
Indeed, this can be seen as a compromise between the slow robustness of interval bisection (‟! Max[0.5, Min[0.5, ! ]]”) and interpolation (‟! Max[0, Min[1, ! ]]”).
Assume root bounded by LowerX and UpperX, with matching y values LowerY and UpperY. Interpolation would make the next x value be LowerX + (UpperX”“LowerX) × LowerY/(LowerY”“UpperY). This can fail for some shapes (e.g., y = x^4 ”“ c), as the interpolated value is always on the same side of the root, so only one side (say, LowerX) ever gets moved.
So instead make the next x value be LowerX + (UpperX”“LowerX) × Max[0.143, Min[0.857, LowerY/(LowerY”“UpperY) ]]
Repeat until UpperX”“LowerX ≤ Tolerance, that constant being pre-determined and small, at which time return the interpolated value (without the bounds).
When LowerX and UpperX are roughly even around the root, it interpolates. When one side is much closer, it brings in the other, moving it by a factor of 1÷0.143 ≈ 7.
FYI, the ‟0.143” constant came from a small experiment done in Excel. I do not know whether it should be precisely 1/7, or some other value. But a small non-exactitude in this would add only a tiny extra to the algorithm’s average time.
Indeed, this can be seen as a compromise between the slow robustness of interval bisection (‟! Max[0.5, Min[0.5, ! ]]”) and interpolation (‟! Max[0, Min[1, ! ]]”).
-
Glenn E.
- Cálem Quinta da Foz 1970
- Posts: 4545
- Joined: 21:27 Wed 09 Jul 2008
- Location: Seattle, WA, USA
Re: Software that makes placemats
Hmm... it does look a bit like a top down view of a Star Trek shuttlecraft... though /Galileo would probably be too esoteric of a reference.djewesbury wrote:I quickly discarded /BeetleCarapacePhilW wrote:Ditto. Some possible insect outlines came to mind, but ‟/DiamondsPlus” is probably simpler and clearer, and therefore preferred.Glenn E. wrote:I can think of nothing better.jdaw1 wrote:Current winner is ‟/DiamondsPlus”
Glenn Elliott
Re: Software that makes placemats
Not sure to which of the many possible uses of /Galileo this refers, but, as you say, too esoteric.Glenn E. wrote:Hmm... it does look a bit like a top down view of a Star Trek shuttlecraft... though /Galileo would probably be too esoteric of a reference.
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Re: Software that makes placemats

Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
jdaw1 wrote:Glenn E. wrote:too esoteric of a reference.
Re: Software that makes placemats
Different question. In the arrangement thread for the 1966 horizontal on 27th June, with each update of the placemats pictures have been posted in the thread.
E.g.,
E.g.,
Is this worth the effort?[url=http://www.theportforum.com/viewtopic.php?p=57931#p57931]Here[/url] jdaw1 wrote:Updated draft of the placemats.
- +BMHR and his Croft.
![]()
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Re: Software that makes placemats
yes
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
jdaw1 wrote:with each update of the placemats pictures have been posted in the thread.
!
Is this worth the effort?
Agreed.djewesbury wrote:yes
"The first duty of Port is to be red"
Ernest H. Cockburn
Ernest H. Cockburn
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
In the general case I'd say no; It's useful in the case you refer to because the first post is not currently being regularly updated, so the image posts are providing a useful update of current attendees and ports; if the first post were being regularly updated, I think the additional effort of pdf -> jpg -> image hosting -> post for each placemat iteration would be excessive.jdaw1 wrote:Different question. In the arrangement thread for the 1966 horizontal on 27th June, with each update of the placemats pictures have been posted in the thread.
Is this worth the effort?
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
Presumably this also depends on any assumptions regarding the nature of the quartic to be solved, i.e. all-real roots (or at least a real root between the specified starting points), no discontinuities (no matching pole-zero root pairs) etc. In which case whether bisection, interpolation or your alternate specified scheme would be quicker in the general case would presumably depend on the nature of the group of potential curves across which the technique would be used? An alternative to the factor changed used to avoid never reaching the root could be to add a small proportion of the step delta determined from interpolation (deliberate over-adjust), though potentially decreasing the over-step with time to avoid oscillation; similar to techniques used to avoid getting stuck in local minima.jdaw1 wrote:Step one: write code to solve a quartic equation. Worrying, I think that I have devised an algorithm as good as Brent’s Method, but simpler, and not needing a pre-chosen x-step.
Assume root bounded by LowerX and UpperX, with matching y values LowerY and UpperY. Interpolation would make the next x value be LowerX + (UpperX”“LowerX) × LowerY/(LowerY”“UpperY). This can fail for some shapes (e.g., y = x^4 ”“ c), as the interpolated value is always on the same side of the root, so only one side (say, LowerX) ever gets moved.
So instead make the next x value be LowerX + (UpperX”“LowerX) × Max[0.143, Min[0.857, LowerY/(LowerY”“UpperY) ]]
Repeat until UpperX”“LowerX ≤ Tolerance, that constant being pre-determined and small, at which time return the interpolated value (without the bounds).
When LowerX and UpperX are roughly even around the root, it interpolates. When one side is much closer, it brings in the other, moving it by a factor of 1÷0.143 ≈ 7.
FYI, the ‟0.143” constant came from a small experiment done in Excel. I do not know whether it should be precisely 1/7, or some other value. But a small non-exactitude in this would add only a tiny extra to the algorithm’s average time.
Indeed, this can be seen as a compromise between the slow robustness of interval bisection (‟! Max[0.5, Min[0.5, ! ]]”) and interpolation (‟! Max[0, Min[1, ! ]]”).
Re: Software that makes placemats
Assumptions: ∈ ℝ; continuous; starting points either side. No more. Desiderata include robustness, speed, and simplicity of code.PhilW wrote:Presumably this also depends on any assumptions regarding the nature of the quartic to be solved, i.e. all-real roots (or at least a real root between the specified starting points), no discontinuities (no matching pole-zero root pairs) etc. In which case whether bisection, interpolation or your alternate specified scheme would be quicker in the general case would presumably depend on the nature of the group of potential curves across which the technique would be used? An alternative to the factor changed used to avoid never reaching the root could be to add a small proportion of the step delta determined from interpolation (deliberate over-adjust), though potentially decreasing the over-step with time to avoid oscillation; similar to techniques used to avoid getting stuck in local minima.
Don’t need to reach the root, only for the bounds either side to be closer than xTolerance, when do a final unconstrained linear interpolation.
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
Any possibility of multiple roots between initial bounds (excluding duplicate root)? (I.e. can we either exclude the possibility of multiple roots being present, and If not then do we care? i.e. are all roots required, or any root). Could there be any bounding of the relative ratio of xTolerance to initial delta between upper and lower bounds?jdaw1 wrote:Assumptions: ∈ ℝ; continuous; starting points either side. No more. Desiderata include robustness, speed, and simplicity of code.
Don’t need to reach the root, only for the bounds either side to be closer than xTolerance, when do a final unconstrained linear interpolation.
n.b. I assume direct calculation would not be appropriate?
Re: Software that makes placemats
LowerX < UpperX; f(LowerX) × f(UpperX) ≤ 0. Any root that is between LowerX and UpperX, please.PhilW wrote:Any possibility of multiple roots between initial bounds (excluding duplicate root)? (I.e. can we either exclude the possibility of multiple roots being present, and If not then do we care? i.e. are all roots required, or any root). Could there be any bounding of the relative ratio of xTolerance to initial delta between upper and lower bounds?
n.b. I assume direct calculation would not be appropriate?
I thought about that, and decided that it would be too much grief.PhilW wrote:n.b. I assume direct calculation would not be appropriate?
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
(and if the implicit answer from your previous post is "no", then how is xTolerance defined/determined?)PhilW wrote:Could there be any bounding of the relative ratio of xTolerance to initial delta between upper and lower bounds?
Re: Software that makes placemats
I know that x is in points, so xTolerance is defined to be 0.01. An answer that accurate is good enough for me.PhilW wrote:how is xTolerance defined/determined?)
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
If a maximum paper size can also be assumed, perhaps no greater than 3.5m in one dimension should be more than sufficient, then this would presumably bound the upper limit to 10000 points, which with a tolerance of 0.01 gives a worst case ratio of tolerance to initial upper-lower of 1/1000000 or approx. 1/(2^20). To identify a 1 in 2^20 region, would then require 20 calculations of y using bisection, which then gives us an upper bound for the required computation.jdaw1 wrote:I know that x is in points, so xTolerance is defined to be 0.01. An answer that accurate is good enough for me.PhilW wrote:how is xTolerance defined/determined?)
Interpolation is only worthwhile compared with bisection if division is sufficiently computationally efficient compared with the saving in additional multiplication/addition operations to calculate the additional bisection steps. At some point this trade-off may change. On a system where division is not fully accelerated in hardware, a division could be as computationally intense as say five bisections, in which case only one or two interpolations may be worthwhile before switching to subsequent bisections, for example.jdaw1 wrote:Desiderata include robustness, speed, and simplicity of code
Going back to your original formula; it is not in the form I would have intuitively expected, but is equivalent, and your arrangement maps well to define the restriction of movement of the estimation region boundaries. The computation is essentially equivalent to standard interpolation; Notably the division could also be avoided for the case where the interpolation is limited, since the tests:
-LowerY<=0.14*(UpperY-LowerY) OR -LowerY>=0.86*(UpperY-LowerY)
could be performed and the division only calculated if they were true.
The generalised formula as:
next x = LowerX + (UpperX”“LowerX) × Max[alpha, Min[(1-alpha), LowerY/(LowerY”“UpperY) ]]
does seem useful, where determination of suitable alpha for different applications is possible.
Seems like a good approach for this application provided division isn't too costly (in which case bisection wins). I would guess you could usefully select a slightly higher value than 1/7 (anything up to 1/4 potentially) which would speed some cases up and others down. Not sure where the optimum value would be, likely data dependent.
Re: Software that makes placemats
PostScript uses single precision, with a 23-bit mantissa.PhilW wrote:1/1000000 or approx. 1/(2^20).
(LowerX + UpperX) ÷ 2 still has s division. Maybe the hardware tests for and accelerates by-two division. Probably not.PhilW wrote:Seems like a good approach for this application provided division isn't too costly
Constant, 1/7, determined by crude experiment in Excel.PhilW wrote:Not sure where the optimum value would be, likely data dependent.
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
(LowerX + UpperX) * 0.5 does not have a division in floating point calculation and would be the expected implementation to reduce computation for that case;jdaw1 wrote:(LowerX + UpperX) ÷ 2 still has s division.PhilW wrote:Seems like a good approach for this application provided division isn't too costly
(LowerX + UpperX) >> 1 would be similarly used for the integer case (though an integer /2 might well be compiler optimised to that shift).
Re: Software that makes placemats
Alas, it is required. Damn.jdaw1 wrote:I thought about that, and decided that it would be too much grief.PhilW wrote:n.b. I assume direct calculation would not be appropriate?
Have you recommended (pseudo)code that will convert c0!c4 to four roots?
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
No, sorry; I would use the formulae from there, and implement calculation of discriminant,p,q,S,Q,x (where c4..c0 are a..e and is only valid for non-zero a).jdaw1 wrote:Have you recommended (pseudo)code that will convert c0!c4 to four roots?
The only optimisations I can see would be potential detection of non-real solutions to allow you to ignore part of the calculation, but not much in the general case.
The fortran implementation here might help?
Re: Software that makes placemats
PostScript lacks complex types, and lacks derived types. Ick. I’ll try harder to avoid this.
Re: Software that makes placemats
/DiamondsPlus: done.

Best fitting of seven glasses on A4.

Best fitting of seven glasses on A4.
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Software that makes placemats
Is the mathematician's solution always the drinker's?jdaw1 wrote:/DiamondsPlus: done.
Best fittin of seven glasses on A4.
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
We once had two sets of seven, Warre and Fonseca, and a room with space constraints. /DiamondsPlus would have helped.djewesbury wrote:Is the mathematician's solution always the drinker's?
However, it is less elegant than some other arrangements. So should be used only when needed only when packing seven onto A4 or US Letter = 8½″×11″, or ten onto US Legal 8½″×14″.
I thought it a mite harsh of you to add a spelling error to the quote of my correctly spelt words.
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Software that makes placemats
Oops! How did I manage that I wonder..jdaw1 wrote: I thought it a mite harsh of you to add a spelling error to the quote of my correctly spelt words.
Your Warre/Fonseca placemats are things of beauty. How did the traced line connecting the glasses appear? And what is the correct way of including an external graphic (the makers' brands)?
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
Made by PhilW, not by me.
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Re: Software that makes placemats
There appears to be a problem with /Array .
The example code in the manual:
[ /Array /Positions [0 2] [2 2 3 2] [4 2 3 2] [6 2] [0 1] [3 1] [6 1] [0 0] [3 0] [6 0] ] ,
when used in a test script, results in an automatic substitution of /TopRow for the intended pattern.
The same thing happens with other examples: /TopRow subsitution every time.
There appears to a be a syntactical error.
The code appears to use /PositionsStart, the manual /Positions .
The example code in the manual:
[ /Array /Positions [0 2] [2 2 3 2] [4 2 3 2] [6 2] [0 1] [3 1] [6 1] [0 0] [3 0] [6 0] ] ,
when used in a test script, results in an automatic substitution of /TopRow for the intended pattern.
The same thing happens with other examples: /TopRow subsitution every time.
There appears to a be a syntactical error.
The code appears to use /PositionsStart, the manual /Positions .
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
-
PhilW
- Dalva Golden White Colheita 1952
- Posts: 3828
- Joined: 13:22 Wed 15 Dec 2010
- Location: Near Cambridge, UK
Re: Software that makes placemats
These were my custom use of the feature "MakePathConnectingGlasses" within Julian's postscript.djewesbury wrote:How did the traced line connecting the glasses appear?
This is not a standard feature. I took a couple of photographs, converted them to postscript format using an imaging program, and then cut/pasted their use with function prototypes into Julian's program, using an online postscript manual as a reference.djewesbury wrote:And what is the correct way of including an external graphic (the makers' brands)?
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Re: Software that makes placemats
Right... I can live without that for now then, given that I got a migraine trying to get the /Array packing style to work...PhilW wrote: This is not a standard feature. I took a couple of photographs, converted them to postscript format using an imaging program, and then cut/pasted their use with function prototypes into Julian's program, using an online postscript manual as a reference.
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
DJ: did the emails help? Please suggest words for the manual.
Re: Software that makes placemats
It has taken me a while to realise what this misses. The assumption is that computation of f[] is slow compared to the modest computation done by the calling routine. Calling f[] half as many times is assumed to be much much more important. So the extra division of interpolation is de minimus.PhilW wrote:Interpolation is only worthwhile compared with bisection if division is sufficiently computationally efficient compared with the saving in additional multiplication/addition operations to calculate the additional bisection steps. At some point this trade-off may change. On a system where division is not fully accelerated in hardware, a division could be as computationally intense as say five bisections, in which case only one or two interpolations may be worthwhile before switching to subsequent bisections, for example.jdaw1 wrote:Desiderata include robustness, speed, and simplicity of code
Re: Software that makes placemats
Very sorry. Damn. Will be fixed today.djewesbury wrote:The code appears to use /PositionsStart, the manual /Positions .
- djewesbury
- Graham’s 1970
- Posts: 8166
- Joined: 19:01 Mon 31 Dec 2012
- Location: Gothenburg, Sweden
- Contact:
Software that makes placemats
jdaw1 wrote:DJ: did the emails help? Please suggest words for the manual.
It's all working fantastically now. The manual only needs a clearer eg for the /Array syntax, perhaps a block of code with all parameters correctly expressed for the basic (x,y) function.jdaw1 wrote:Very sorry. Damn. Will be fixed today.djewesbury wrote:The code appears to use /PositionsStart, the manual /Positions .
Emails were v helpful. Thanks!
Daniel J.
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Husband of a relentless former Soviet Chess Master.
delete.. delete.. *sigh*.. delete...
Re: Software that makes placemats
jdaw1, in the thread entitled [i]The Port of Belfast, Tuesday 25th June, 6pm, The Galley[/i], wrote:And one bug fix in the code[url=http://www.theportforum.com/viewtopic.php?p=58189#p58189]Here[/url] djewesbury wrote:The placemats, which only required 14 major drafts and several ".1.1.1" updates... I'm learning..., and one new feature. No trouble at all.
Re: Software that makes placemats
A note to self, following the 1966 Horizontal on Thu 27 June 2013: if RAYC is printing, he prints glasses sheets to card, and TN sheets to paper. So they should be separated, perhaps by
- /PageOrderingNonDecanterLabelGlasses {[ GlassesOnSheets length {-1} repeat ]} def
Re: Software that makes placemats
Alternatively they can simply be printed to paper, if preferred. I marginally favour card, but the difference is very slight.
Rob C.
Re: Software that makes placemats
Broader question: what should be the default? That leads to a question about our behaviour.
What do we do when setting up a tasting?
1. Arrange glasses sheets on table, simultaneously putting TN sheets with the glasses sheets.
2. Arrange glasses sheets, and when that is all done, then put the TN sheets with the glasses sheets.
Yesterday we did the second.
If we do #1, the the ideal ordering is the current one:
(FYI, the programming effort is about zero the switch would be very easy to implement.)
What do we do when setting up a tasting?
1. Arrange glasses sheets on table, simultaneously putting TN sheets with the glasses sheets.
2. Arrange glasses sheets, and when that is all done, then put the TN sheets with the glasses sheets.
Yesterday we did the second.
If we do #1, the the ideal ordering is the current one:
- Person 1
- Glasses
- TNs
- Person 2
- Glasses
- TNs
- Person 3
- Glasses
- TNs
- Person 4
- Glasses
- TNs
- !
- Glasses
- Person 1
- Person 2
- Person 3
- Person 4
- !
- TNs
- Person 1
- Person 2
- Person 3
- Person 4
- !
(FYI, the programming effort is about zero the switch would be very easy to implement.)

