- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!計算尺
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/
http://49.212.24.146/~take/TakeWiki/index.php?Arduino%E5%8B%89%E5%BC%B7%E4%BC%9A%2FJ2-%E8%A8%88%E7%AE%97%E5%B0%BA%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9#e5b24e43
----
! Java_Script
http://www.pi-sliderule.net/program/sliderule/java/sliderule.html