tips-sliderule
計算尺
https://ja.wikipedia.org/wiki/%E8%A8%88%E7%AE%97%E5%B0%BA
- https://www.sliderulemuseum.com/SR_Scales.htm
- https://staff.aist.go.jp/tominaga-daisuke/sliderule/rectilinear/index.html
- http://www.pi-sliderule.net/
- https://yoshi-g.com/sliderule027#27-5
名前 | 単位 | |
---|---|---|
D尺 | 標準(Log) | |
C尺 | 標準(Log) | |
A尺 | D尺の1/2目盛 | |
B尺 | C尺の1/2目盛 | |
K尺 | C尺の1/3目盛 | |
CI尺 | C尺の逆目盛 | |
DF尺 | C尺を10ずらす | |
DF尺 | C尺をπずらす | |
S/SI尺 | SIN | |
T1/T2 | tan (6度から~84度まで) |
計算式
R : 幅(尺の長さ) # : スケール(目盛の値)
最初の列にはスケール名があります。 2番目の列は、そのスケールに使用される式です。 単純化は、読者の練習問題として残されています。 使用される規則では、 Rはルールの長さを示し、 #は位置が計算されているスケール上の数値を示します。 最後の列には、特定のスケールに関するメモが含まれています。
Scale | Formula | Comments |
---|---|---|
A/B | (R/2)*log(#) | Used to calculate squares and square roots with the D scale. used to calculate the sine of an angle with the S scale on a Mannheim slide rule |
C/D | R*log(#) | Used in multiplication and division. and also used with many other scales in various operations |
CF/DF | (log# - logPI)*R if # less than R then add R | The folded scales used as a shortcut in multiplication and division |
CI | abs[R*log(10/#)-R] | The inverse of the C scale. often used as a shortcut in division |
CIF | abs[R*(log(1/#) - log(1/PI))] if #<(10/PI) abs[R*(log(1/#) - log(1/PI)) - 25] if #>(10/PI) | The inverse of the CF scale |
K | (R/3)*log(#) | Used with the D scale to find the cube or cube root of a number |
L | #*R | Used with the D scale to calculate the logarithm log10(#) of a number |
LL0 | log(ln(#))*R + 3*R | Contains all numbers greater than or equal to 1.001 and less than or equal to 1.01; these scales (LL0-LL3) are used for logarithms. roots. and powers |
LL1 | log(ln(#))*R + 2*R | Contains all numbers greater than or equal to 1.01 and less than or equal to 1.105 |
LL2 | log(ln(#))*R + R | Contains all numbers greater than or equal to 1.105 and less than or equal to e |
LL3 | log(ln(#))*R | This contains all numbers greater than or equal to e |
LL/0 | log(ln(1/#))*R + 3*R | This contains all numbers greater than or equal to e-0.01 and less than or equal to e-0.001 |
LL/1 | log(ln(1/#))*R + 2*R | This contains all numbers greater than or equal to e-0.1 and less than or equal to e-0.01 |
LL/2 | log(ln(1/#))*R + R | This contains all numbers greater than or equal to e-1.0 and less than or equal to e-0.1 |
LL/3 | log(ln(1/#))*R | This contains all numbers greater than or equal to e-10.0 and less than or equal to e-1.0 |
R1 | log(#)*2*R | Used with the D scale to find squares and square roots; those numbers greater than about 3.13 are on the R2 scale |
R2 | [log(#)*2*R] - 25 | Used with the D scale to find squares and square roots; those numbers greater than about 3.13 are on the R2 scale |
Smannheim | (R/2)*[2 + log(sin(#))] | Used with the A scale to calculate the sine of a number. or the tangent of a number less than 5.7 degrees |
S/T | [log(100*sin(#))]*R | Used with the C scale to calculate the sine or the tangent of a number less than 5.7 degrees |
S | [log(10*sin(#))]*R | Used with the C scale to calculate the sine of a number greater than 5.7 degrees |
T | R*log[10*tan(#) | Used with the D scale to calculate the tangent of angles greater than 5.7 degrees |
https://www.sliderulemuseum.com/SR_Scales.htm
http://www.pi-sliderule.net/sliderule/make/program/datafile.html
y=log(sin(x)) (0<x<π)
y=log(sin(x)) (0<x<π) y'=cos(x)/sin(x)=cot(x)=1/tan(x) x→+0でy→-∞ x→π-0でy→-∞ 0<x<π/2でy'>0なので単調増加 π/2<x<πでy'<0なので単調減少 x=π/2でy'=0で極大となる。 x=π/2で極大値(最大値)y=0 増減表(等幅フォントで表示させ見てください) x | 0 ……π/2 …… π y'|+∞ + 0 − -∞ y |-∞ ↑ 極大0 ↓ -∞ グラフを描く補助として 直線x=π/2に対してグラフが対称 漸近線x=0(y軸)、直線x=π x=π/6および5π/6でy=log(1/2)=-log2=-0.6931… x=π/4および3π/4でy=log(1/√2)=-(log2)/2=-0.3465… x=π/3および2π/3でy=log(√3/2)=log(3)/2-log(2)=-0.1438… の情報を使うと良いでしょう。
作り方
http://osinko.hatenablog.jp/entry/2018/02/15/230704
#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Fri Mar 5 23:32:41 2021 @author: green """ import math def header() : print("\\documentclass{jsarticle} " ) print("\\usepackage[dvipdfmx]{graphicx}") print("\\usepackage{tikz}") print("\\usetikzlibrary{intersections,calc,arrows.meta}") print("\\begin{document}") print("\\begin{tikzpicture}") print( "" ) def footer() : print("\\end{tikzpicture}") print("\\end{document}") print("") D=10.0 # C / D Rail header() for x in range(10,101): x1 = (x/D) x2 = math.log10( x1 ) * 10.0 # print ('\\draw (0,0) rectangle(','{:.4g}'.format(x2),',2);') print ('\\draw (', '{:.4g}'.format(x2), ',0 ) -- (', '{:.4g}'.format(x2),',2);') if ( (x % 5 ) == 0 ) : print ('\\draw (', '{:.4g}'.format(x2), ',0 ) node {', x1, '} ;' ) footer()
Tips
https://www.sliderulemuseum.com/
Java_Script
http://www.pi-sliderule.net/program/sliderule/java/sliderule.html