Two way slab analysis by Fourier Method
長方形版の応力は、設計実務においては主要な境界条件に対して、無次元化した数値表が用意されており、その値を用いて応力、変形を推定する事が通例となっています。既存の数値計算ソフトウェアはこの数値表を利用し、内外挿する事により求めているのが多いです。
本プログラムは、Poisson-Kirchhoffの薄板理論で支配される偏微分方程式を東博士によって考案された境地値で表された長方形平板の基本解を利用し、板内の撓み、及び応力を直接求めているところに、他のソフトウェアとは異なる特徴があります。
コードはPythonによって記述しました。算定にあたり、以下の手法をとっています。
├── README.md
├── aijRc.py
├── report.py
├── twoWaySlab.py
├── gui.py
├── higashi.py
├── gui.wxg
├── db
│ ├── rcslab.txt
├── fonts
│ ├── GenShinGothic-Monospace-Medium.ttf
├── images
│ ├── 4sideFix.jpg
│ ├── 4sideFix.png
│ ├── m2.jpg
│ ├── m2_2pin.jpg
│ ├── m2_2pin2.jpg
│ ├── m2_2pin3.jpg
│ ├── m3-1pin.jpg
│ ├── m3-1pin2.jpg
│ ├── m3_1.jpg
│ ├── m3_1pin.jpg
│ ├── m3_2.jpg
│ ├── m4pin.jpg
Main Program
Calculation of the two way plate
obj = Higashi()
obj.solve(Id_bound,lx,ly,t,w,creep,ec,nu,nmax,mmax)
# Solve, four side fix plate
ly/lx = 1.3333333333333333 nu= 0.0
nmax = 5 mmax 5
A = [[ 0.5090853 0. 0. 0. 0. 0.18675521
-0.01495861 0.0034888 -0.00129928 0.00061684]
[ 0. 0.14293034 0. 0. 0. -0.03721607
0.02075058 -0.00756752 0.00327597 -0.00166207]
[ 0. 0. 0.08489664 0. 0. 0.01004821
-0.01285853 0.00747021 -0.00401272 0.00227042]
[ 0. 0. 0. 0.06063058 0. -0.00391218
0.00716243 -0.00577602 0.00381133 -0.00243721]
[ 0. 0. 0. 0. 0.04715702 0.0018927
-0.00413512 0.00412076 -0.0032123 0.00230562]
[ 0.24900694 -0.04962143 0.01339761 -0.00521623 0.00252361 0.34803985
0. 0. 0. 0. ]
[-0.01994481 0.02766744 -0.0171447 0.0095499 -0.00551349 0.
0.10611185 0. 0. 0. ]
[ 0.00465173 -0.01009003 0.00996028 -0.00770136 0.00549435 0.
0. 0.06366198 0. 0. ]
[-0.00173238 0.00436796 -0.00535029 0.00508177 -0.00428306 0.
0. 0. 0.04547284 0. ]
[ 0.00082246 -0.00221609 0.00302723 -0.00324962 0.00307416 0.
0. 0. 0. 0.03536777]]
y = [-1.76840332e-01 4.74081318e-03 -6.22833216e-04 1.62159911e-04
-5.93426112e-05 -1.39099658e-01 2.02765647e-03 -2.62809136e-04
6.84113770e-05 -2.50351648e-05]
mx = inv(A)@y = [-0.271811 -0.01676099 0.01236399 -0.00646475 0.00359169 -0.20818584
-0.02484464 0.01004986 -0.00472525 0.00259829]
mx1 = -0.06977026632967204
my1 = -0.056276894239432954
Search maximum value by x/a = dx = 0.02
x = 0.00 mmax = 0.02969
Search maximum value by x/a = dx = 0.026666666666666665
y = 0.00 mmax = 0.01310
w(0,0) = 0.0314773344818457 -> 0.0236080008613843
mx2= 0.0296938294167846
my2= 0.0131015854262382
(6.279323969670483, 2.67244464751061, 5.064920481548966, 1.17914268836144, 1.76389833295548)
obj = Aij_rc_set()
obj.Ra(index)
obj.Ra_p(index,pitch)
obj.Ec(fc,gamma)
use “./fonts/GenshinGothic-Monospace-Medium.ttf” for japanese
https://gammasoft.jp/blog/pdf-japanese-font-by-python/
self.FONT_NAME = "GenShinGothic"
GEN_SHIN_GOTHIC_MEDIUM_TTF = "./fonts/GenShinGothic-Monospace-Medium.ttf"
# フォント登録
pdfmetrics.registerFont(TTFont('GenShinGothic', GEN_SHIN_GOTHIC_MEDIUM_T
Csv入出力の実装
Download souse code, then,
python3 ./twoWaySlab.py
By power shell
> pyinstaller main.py --onefile --noconsole --icon=icons/twoWay_Icon.ico
> mv ./images ./dist/twoWaySlab/
> mv ./fonts ./dist/twoWaySlab/
> ./dist/twoWaySlab/twoWaySlab.exe
or
> pyinstaller twoWaySlab.spec
> mv ./images ./dist/twoWaySlab/
> mv ./fonts ./dist/twoWaySlab/
> ./dist/twoWaySlab/twoWaySlab.exe
Check Release, and click main/rigidWink.exe!