implicit real*8(a-h,o-z)
dimension x(315500),y(315500),z(315500),e66(6,6),b(3,3)&
&,meshmoku(300000,8),meshkou(300000,8),meshkou2(300000,8),meshhogou(300000,8)
b1=8.4d-1
b2=0.9d-2
b3=0.7d-2!補剛
b4=6.8d-2!補剛
h2=2.55d-1
h3=0.5d-2!補剛
h4=1.13d-1!補剛
h5=0.7d-2!補剛
h1=h4+h5
ell=3.500d0
p=1.000d-1!荷重
ellhaji=1.500d-1!出ている部分の長さ
ellall=ell*2+ellhaji*2!ell*2
!ellall=ell+ellhaji*2!ell*1
!xyz方向の要素分割数
nx1=8!木材
nx2=7!鋼板(nx2=1の時鋼板の上部の一部分がなくなる)
nx3=5!補剛
nx4=5!補剛
ny1=5!上部分と下部分の高さ方向の分割数
ny2=10!間の鋼板の高さ方向の分割数(3以上)
ny3=2!補剛
ny4=3!補剛
ny5=3!補剛
nx=nx1+2*(nx2+nx3+nx4)+1
nznaka=50
nzhaji=10!出ている部分の分割数
nz=nzhaji*2+nznaka*2
!ヤング率の入力
ezz=7.694d3!z軸方向のヤング率
exx=ezz/25.0d0!x軸方向のヤング率
eyy=ezz/25.0d0!y軸方向のヤング率
ezz2=206.0d3!z軸方向のヤング率
!ポアソン比の入力
poixy=0.016d0
poixz=poixy
poiyx=poixy
poiyz=poixy
poizx=0.4d0
poizy=poizx
!せん断弾性係数の入力
gxy=ezz/15.0d0
gxz=gxy
gyz=gxy
!1つあたりの要素の長さ?
xn1=b1/nx1
xn2=b2/nx2
xn3=b3/nx3
xn4=b4/nx4
yn1=h1/ny1
yn2=h2/ny2
yn3=h3/ny3
yn4=h4/ny4
yn5=h5/ny5
zn=ell/nznaka
znhaji=ellhaji/nzhaji
! 節点番号ごとの節点座標!i~mで始まるのがdoで使える 

!一番下部分の鋼材の節点
do k=1,nz+1
do j=0,ny1
do l=0,1
do i=0,nx2-1
nset=1+i+l*(nx2+nx1+1)+j*(nx1+2*nx2+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn2+l*(b1+b2+xn2)+b4+b3
y(nset)=j*yn1
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do 
end do
end do
end do
!一番下部分の節点 木材
do k=1,nz+1
do j=0,ny1
do i=0,nx1
nset=nx2+1+i+j*(nx2*2+nx1+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn1+b2+b4+b3!iが0~xn2までいってi=0,l=1になる
y(nset)=j*yn1
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do

!下から2番目の鋼材の節点
do k=1,nz+1
do j=0,ny2-2
do l=0,1
do i=0,nx2
nset=(nx2*2+nx1+1)*(ny1+1)+i+1+l*(nx2+1)+j*2*(nx2+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn2+l*(b1+b2)+b4+b3
y(nset)=j*yn2+h1+yn2
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から3番目の補剛材部分の節点
do k=1,nz+1
do j=0,ny3-1
do l=0,1
do i=0,nx3-1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+1+i+l*(nx3+nx2+1+nx2+1)&
&+j*2*(nx3+nx2+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn3+l*(b3+b2+b1+b2+xn3)+b4
y(nset)=j*yn3+h1+h2
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から3番目の鋼材部分の節点
do k=1,nz+1
do j=0,ny3-1
do l=0,1
do i=0,nx2
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2+nx3&
&+1+i+l*(nx2+1)&
&+j*2*(nx3+nx2+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn2+l*(b1+b2)+b4+b3
y(nset)=j*yn3+h1+h2
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から4番目の補剛材部分の節点!ここまで
do k=1,nz+1
do j=0,ny4-1
do l=0,1
do i=0,nx3-1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*ny3*2&
&+1+i+l*(nx3+nx2*2+nx1+1)&
&+j*(nx3*2+nx2*2+nx1+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn3+l*(b3+b2+b1+b2+xn3)+b4
y(nset)=j*yn4+h1+h2+h3
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から4番目の鋼材部分の節点
do k=1,nz+1
do j=0,ny4-1
do l=0,1
do i=0,nx2-1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+nx3&
&+1+i+l*(nx2+nx1+1)&
&+j*(nx3*2+(nx2+1)*2+nx1-1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn2+l*(b1+b2+xn2)+b3+b4
y(nset)=j*yn4+h1+h2+h3
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から4番目の木材部分の節点
do k=1,nz+1
do j=0,ny4-1
do i=0,nx1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+nx3+nx2&
&+1+i&
&+j*(nx3*2+(nx2+1)*2+nx1-1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn1+b4+b3+b2
y(nset)=j*yn4+h1+h2+h3
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
!下から5番目の補剛材部分の節点その1（突き出ている部分）
do k=1,nz+1
do j=0,ny5
do l=0,1
do i=0,nx4-1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+1+i+l*(nx4+2*nx3+2*nx2+nx1+1)&
&+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn4+l*(b4+b3*2+b2*2+b1+xn4)
y(nset)=j*yn5+h1+h2+h3+h4
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から5番目の補剛材部分の節点その2
do k=1,nz+1
do j=0,ny5
do l=0,1
do i=0,nx3-1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+nx4&
&+1+i+l*(nx3+2*nx2+nx1+1)&
&+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn3+l*(b3+b2*2+b1+xn3)+b4
y(nset)=j*yn5+h1+h2+h3+h4
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do
!下から5番目の鋼材部分の節点
do k=1,nz+1
do j=0,ny5
do l=0,1
do i=0,nx2-1
nset=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+nx4+nx3&
&+1+i+l*(nx2+nx1+1)&
&+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn2+l*(b2+b1+xn2)+b4+b3
y(nset)=j*yn5+h1+h2+h3+h4
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
end do

!下から5番目の木材部分の節点
do k=1,nz+1
do j=0,ny5
do i=0,nx1
nset=(1+nx1+2*nx2)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+nx4+nx3+nx2&
&+1+i&
&+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+(k-1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
x(nset)=i*xn1+b4+b3+b2
y(nset)=j*yn5+h1+h2+h3+h4
!print'(i6,a,f9.6,a,f9.6,a,f9.6)',&
!&nset,',',x(nset),',',y(nset),',',z(nset)
if (k>=0.and.k<=nzhaji) then
z(nset)=znhaji*(k-1)
else if (k>nzhaji.and.k<=(nznaka*2+1+nzhaji)) then
z(nset)=zn*(k-nzhaji-1)+ellhaji
else
z(nset)=znhaji*(k-nzhaji-nznaka*2-1)+ellhaji+ell*2.0
end if
end do
end do
end do
!i5~6が整数,aが文字,f9,6が小数.1peとかはEの＊乗
!接点番号と座標の出力
nsettensuu=(nz+1)*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
print'("*NODE, NSET=Nall")'
do i=1,nsettensuu
print'(i6,a,1pe13.5,a,1pe13.5,a,1pe13.5)',&
&i,',',x(i),',',y(i),',',z(i)
end do

!ここから
!要素番号とその要素の8接点の接点番号
!木材の要素　一番下から順番に
nyou=0
do k=0,nz-1
do j=0,ny1-1
do i=1,nx1
nyou=nyou+1
meshmoku(nyou,1)=nx2+i+j*(2*nx2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,2)=meshmoku(nyou,1)+(2*nx2+nx1+1)
meshmoku(nyou,3)=meshmoku(nyou,2)&
&+(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1)
meshmoku(nyou,4)=meshmoku(nyou,1)&
&+(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1)
meshmoku(nyou,5)=meshmoku(nyou,1)+1
meshmoku(nyou,6)=meshmoku(nyou,2)+1
meshmoku(nyou,7)=meshmoku(nyou,3)+1
meshmoku(nyou,8)=meshmoku(nyou,4)+1
end do
end do
end do
!下から4段目の木材の要素(一番下の段〜一番上の段の1つ前の段まで)
do k=0,nz-1
do j=0,ny4-2
do i=1,nx1
nyou=nyou+1
meshmoku(nyou,1)=(2*nx2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)+2*(nx3+nx2+1)*ny3&
&+nx3+nx2+i+j*((nx3+nx2)*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,2)=meshmoku(nyou,1)+((nx3+nx2)*2+nx1+1)
meshmoku(nyou,3)=meshmoku(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,4)=meshmoku(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,5)=meshmoku(nyou,1)+1
meshmoku(nyou,6)=meshmoku(nyou,2)+1
meshmoku(nyou,7)=meshmoku(nyou,3)+1
meshmoku(nyou,8)=meshmoku(nyou,4)+1
end do
end do
end do
!下から4段目の木材の要素(一番上の段)
do k=0,nz-1
do i=1,nx1
nyou=nyou+1
meshmoku(nyou,1)=(2*nx2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)+2*(nx3+nx2+1)*ny3&
&+(nx3*2+nx2*2+nx1+1)*(ny4-1)+nx3+nx2+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,2)=(2*nx2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)+2*(nx3+nx2+1)*ny3&
&+(nx3*2+nx2*2+nx1+1)*(ny4)+nx4+nx3+nx2+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,3)=meshmoku(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,4)=meshmoku(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,5)=meshmoku(nyou,1)+1
meshmoku(nyou,6)=meshmoku(nyou,2)+1
meshmoku(nyou,7)=meshmoku(nyou,3)+1
meshmoku(nyou,8)=meshmoku(nyou,4)+1
end do
end do
!下から5段目の木材の要素
do k=0,nz-1
do j=0,ny5-1
do i=1,nx1
nyou=nyou+1
meshmoku(nyou,1)=(2*nx2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+nx4+nx3+nx2+i+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,2)=meshmoku(nyou,1)+nx4*2+nx3*2+nx2*2+nx1+1
meshmoku(nyou,3)=meshmoku(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,4)=meshmoku(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshmoku(nyou,5)=meshmoku(nyou,1)+1
meshmoku(nyou,6)=meshmoku(nyou,2)+1
meshmoku(nyou,7)=meshmoku(nyou,3)+1
meshmoku(nyou,8)=meshmoku(nyou,4)+1
end do
end do
end do
!一番下の段の鋼板
nyou=0
do m=0,1
do k=0,nz-1
do j=0,ny1-1
do i=1,nx2
nyou=nyou+1
meshkou(nyou,1)=i+j*(nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou(nyou,2)=meshkou(nyou,1)+nx2*2+nx1+1
meshkou(nyou,3)=meshkou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,4)=meshkou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,5)=meshkou(nyou,1)+1
meshkou(nyou,6)=meshkou(nyou,2)+1
meshkou(nyou,7)=meshkou(nyou,3)+1
meshkou(nyou,8)=meshkou(nyou,4)+1
end do
end do 
end do
end do
!下から2段目の鋼板(最初の一段目)
do m=0,1
do k=0,nz-1
do i=1,nx2
nyou=nyou+1
meshkou(nyou,1)=(nx2*2+nx1+1)*(ny1)+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou(nyou,2)=(2*nx2+nx1+1)*(ny1+1)+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+1)
meshkou(nyou,3)=meshkou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,4)=meshkou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,5)=meshkou(nyou,1)+1
meshkou(nyou,6)=meshkou(nyou,2)+1
meshkou(nyou,7)=meshkou(nyou,3)+1
meshkou(nyou,8)=meshkou(nyou,4)+1
end do
end do 
end do
!下から2段目の鋼板(2段目から最後の前まで)
do m=0,1
do k=0,nz-1
do j=0,ny2-3!ny2>3
do i=1,nx2
nyou=nyou+1
meshkou(nyou,1)=(2*nx2+nx1+1)*(ny1+1)+i&
&+j*2*(nx2+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+1)
meshkou(nyou,2)=meshkou(nyou,1)+(nx2+1)*2
meshkou(nyou,3)=meshkou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,4)=meshkou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,5)=meshkou(nyou,1)+1
meshkou(nyou,6)=meshkou(nyou,2)+1
meshkou(nyou,7)=meshkou(nyou,3)+1
meshkou(nyou,8)=meshkou(nyou,4)+1
end do
end do 
end do
end do
!下から2段目の鋼板(最後の段)
do m=0,1
do k=0,nz-1
do i=1,nx2
nyou=nyou+1
meshkou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-2)*2+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+1)
meshkou(nyou,2)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2+nx3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+1)
meshkou(nyou,3)=meshkou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,4)=meshkou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,5)=meshkou(nyou,1)+1
meshkou(nyou,6)=meshkou(nyou,2)+1
meshkou(nyou,7)=meshkou(nyou,3)+1
meshkou(nyou,8)=meshkou(nyou,4)+1
end do 
end do
end do
!下から3番目の鋼材の要素(一番下〜一番上の段の1つ下の段まで)
do m=0,1
do k=0,nz-1
do j=0,ny3-2
do i=1,nx2
nyou=nyou+1
meshkou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)+nx3+i&
&+j*2*(nx3+nx2+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+1)
meshkou(nyou,2)=meshkou(nyou,1)+2*(nx3+nx2+1)
meshkou(nyou,3)=meshkou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,4)=meshkou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,5)=meshkou(nyou,1)+1
meshkou(nyou,6)=meshkou(nyou,2)+1
meshkou(nyou,7)=meshkou(nyou,3)+1
meshkou(nyou,8)=meshkou(nyou,4)+1
end do
end do
end do
end do
!下から3番目の鋼材の要素(1番上の段)
do m=0,1
do k=0,nz-1
do i=1,nx2
nyou=nyou+1
meshkou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3-1)+nx3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+1)
meshkou(nyou,2)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+i+2*(nx3+nx2+1)*ny3+nx3&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)!m=1の時に+1
meshkou(nyou,3)=meshkou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,4)=meshkou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou(nyou,5)=meshkou(nyou,1)+1
meshkou(nyou,6)=meshkou(nyou,2)+1
meshkou(nyou,7)=meshkou(nyou,3)+1
meshkou(nyou,8)=meshkou(nyou,4)+1
end do
end do
end do
!下から4番目の鋼材の要素その1（一番下の段から一番上の1つ下の段まで)
!ここからmeshkou2にして下から4段目と5段目の鋼材がない場合を
!nx2=1のとき簡単に求められるようにする
nyou=0
do m=0,1
do k=0,nz-1
do j=0,ny4-2
do i=1,nx2
nyou=nyou+1
meshkou2(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3)+nx3+i+j*(nx3*2+nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou2(nyou,2)=meshkou2(nyou,1)+nx3*2+nx2*2+nx1+1
meshkou2(nyou,3)=meshkou2(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,4)=meshkou2(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,5)=meshkou2(nyou,1)+1
meshkou2(nyou,6)=meshkou2(nyou,2)+1
meshkou2(nyou,7)=meshkou2(nyou,3)+1
meshkou2(nyou,8)=meshkou2(nyou,4)+1
end do
end do
end do
end do
!do i=1,2*nx2*(ny4+ny5)*nz
!print'(i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6)',&
!&i,',',&
!&meshkou2(i,1),',',&
!&meshkou2(i,2),',',&
!&meshkou2(i,3),',',&
!&meshkou2(i,4),',',&
!&meshkou2(i,5),',',&
!&meshkou2(i,6),',',&
!&meshkou2(i,7),',',&
!&meshkou2(i,8)
!end do
!下から4番目の鋼材の要素(一番上の1つ下の段から一番上の段まで)
do m=0,1
do k=0,nz-1
do i=1,nx2
nyou=nyou+1
meshkou2(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3)+(nx3*2+nx2*2+nx1+1)*(ny4-1)+nx3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou2(nyou,2)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3)+(nx3*2+nx2*2+nx1+1)*(ny4)+nx4+nx3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou2(nyou,3)=meshkou2(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,4)=meshkou2(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,5)=meshkou2(nyou,1)+1
meshkou2(nyou,6)=meshkou2(nyou,2)+1
meshkou2(nyou,7)=meshkou2(nyou,3)+1
meshkou2(nyou,8)=meshkou2(nyou,4)+1
end do
end do
end do

!下から5番目の鋼材の要素(一番下から一番上の段の1つ下の段まで）
do m=0,1
do k=0,nz-1
do j=0,ny5-2
do i=1,nx2
nyou=nyou+1
meshkou2(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3)+(nx3*2+nx2*2+nx1+1)*(ny4)+nx4+nx3&
&+i+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou2(nyou,2)=meshkou2(nyou,1)+nx3*2+nx2*2+nx1+1+nx4*2
meshkou2(nyou,3)=meshkou2(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,4)=meshkou2(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,5)=meshkou2(nyou,1)+1
meshkou2(nyou,6)=meshkou2(nyou,2)+1
meshkou2(nyou,7)=meshkou2(nyou,3)+1
meshkou2(nyou,8)=meshkou2(nyou,4)+1
end do
end do
end do
end do
!下から5番目の鋼材の要素(一番上の段の1つ下の段から一番上の段まで）
do m=0,1
do k=0,nz-1
do i=1,nx2
nyou=nyou+1
meshkou2(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3)+(nx3*2+nx2*2+nx1+1)*(ny4)&
&+(nx4*2+nx3*2+nx2*2+nx1+1)*(ny5-1)+nx4+nx3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou2(nyou,2)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+2*(nx3+nx2+1)*(ny3)+(nx3*2+nx2*2+nx1+1)*(ny4)&
&+(nx4*2+nx3*2+nx2*2+nx1+1)*(ny5)+nx4+nx3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx2+nx1)
meshkou2(nyou,3)=meshkou2(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,4)=meshkou2(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshkou2(nyou,5)=meshkou2(nyou,1)+1
meshkou2(nyou,6)=meshkou2(nyou,2)+1
meshkou2(nyou,7)=meshkou2(nyou,3)+1
meshkou2(nyou,8)=meshkou2(nyou,4)+1
end do
end do
end do
!ここまでmeshkou2
!下から3番目の補剛材の要素(一番下~一番上の段の1つ下の段まで)
nyou=0
do m=0,1
do k=0,nz-1
do j=0,ny3-2
do i=1,nx3
nyou=nyou+1
meshhogou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+i+j*(nx3+nx2+1)*2&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2*2+1)
meshhogou(nyou,2)=meshhogou(nyou,1)+(nx3+nx2+1)*2
meshhogou(nyou,3)=meshhogou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,4)=meshhogou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,5)=meshhogou(nyou,1)+1
meshhogou(nyou,6)=meshhogou(nyou,2)+1
meshhogou(nyou,7)=meshhogou(nyou,3)+1
meshhogou(nyou,8)=meshhogou(nyou,4)+1
end do
end do
end do
end do
!下から3番目の補剛材の要素(一番上の段)
do m=0,1
do k=0,nz-1
do i=1,nx3
nyou=nyou+1
meshhogou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+2*(nx2+1)*(ny2-1)&
&+(nx3+nx2+1)*2*(ny3-1)+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2*2+1)
meshhogou(nyou,2)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2*2+nx1)
meshhogou(nyou,3)=meshhogou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,4)=meshhogou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,5)=meshhogou(nyou,1)+1
meshhogou(nyou,6)=meshhogou(nyou,2)+1
meshhogou(nyou,7)=meshhogou(nyou,3)+1
meshhogou(nyou,8)=meshhogou(nyou,4)+1
end do
end do
end do
!下から4番目の補剛材の要素(一番下~一番上の1つ下の段まで)
do m=0,1
do k=0,nz-1
do j=0,ny4-2
do i=1,nx3
nyou=nyou+1
meshhogou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2+(nx3+nx2+1)*2*ny3&
&+i+j*(nx3*2+nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2+nx1+nx2)
meshhogou(nyou,2)=meshhogou(nyou,1)+(nx3*2+nx2*2+nx1+1)
meshhogou(nyou,3)=meshhogou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,4)=meshhogou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,5)=meshhogou(nyou,1)+1
meshhogou(nyou,6)=meshhogou(nyou,2)+1
meshhogou(nyou,7)=meshhogou(nyou,3)+1
meshhogou(nyou,8)=meshhogou(nyou,4)+1
end do
end do
end do
end do
!下から4番目の補剛材の要素(一番上の段)
do m=0,1
do k=0,nz-1
do i=1,nx3
nyou=nyou+1
meshhogou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2+(nx3+nx2+1)*2*ny3&
&+(nx3*2+nx2*2+nx1+1)*(ny4-1)+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2+nx1+nx2)
meshhogou(nyou,2)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+(nx3*2+nx2*2+nx1+1)*ny4+nx4+i&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2+nx1+nx2)
meshhogou(nyou,3)=meshhogou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,4)=meshhogou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,5)=meshhogou(nyou,1)+1
meshhogou(nyou,6)=meshhogou(nyou,2)+1
meshhogou(nyou,7)=meshhogou(nyou,3)+1
meshhogou(nyou,8)=meshhogou(nyou,4)+1
end do
end do
end do
!下から5番目の補剛材の要素その1（一番外側の突き出している部分)
do m=0,1
do k=0,nz-1
do j=0,ny5-1
do i=1,nx4
nyou=nyou+1
meshhogou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2+(nx3+nx2+1)*2*ny3&
&+(nx3*2+nx2*2+nx1+1)*ny4+i+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx4+nx3*2+nx2*2+nx1)
meshhogou(nyou,2)=meshhogou(nyou,1)+(nx4*2+nx3*2+nx2*2+nx1+1)
meshhogou(nyou,3)=meshhogou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,4)=meshhogou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,5)=meshhogou(nyou,1)+1
meshhogou(nyou,6)=meshhogou(nyou,2)+1
meshhogou(nyou,7)=meshhogou(nyou,3)+1
meshhogou(nyou,8)=meshhogou(nyou,4)+1
end do
end do
end do
end do
!下から5番目の補剛材の要素その2（内側の部分)
do m=0,1
do k=0,nz-1
do j=0,ny5-1
do i=1,nx3
nyou=nyou+1
meshhogou(nyou,1)=(nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2+(nx3+nx2+1)*2*ny3&
&+(nx3*2+nx2*2+nx1+1)*ny4+nx4+i+j*(nx4*2+nx3*2+nx2*2+nx1+1)&
&+k*((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))&
&+m*(nx3+nx2*2+nx1)
meshhogou(nyou,2)=meshhogou(nyou,1)+(nx4*2+nx3*2+nx2*2+nx1+1)
meshhogou(nyou,3)=meshhogou(nyou,2)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,4)=meshhogou(nyou,1)&
&+((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
meshhogou(nyou,5)=meshhogou(nyou,1)+1
meshhogou(nyou,6)=meshhogou(nyou,2)+1
meshhogou(nyou,7)=meshhogou(nyou,3)+1
meshhogou(nyou,8)=meshhogou(nyou,4)+1
end do
end do
end do
end do
!設定

print'("*ELEMENT, TYPE=C3D8, ELSET=Ekou")'
do i=1,2*nx2*(ny1+ny2+ny3)*nz
print'(i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6)',&
&i,',',&
&meshkou(i,1),',',&
&meshkou(i,2),',',&
&meshkou(i,3),',',&
&meshkou(i,4),',',&
&meshkou(i,5),',',&
&meshkou(i,6),',',&
&meshkou(i,7),',',&
&meshkou(i,8)
end do
nyousosuukou=2*nx2*(ny1+ny2+ny3)*nz
print'("*ELEMENT, TYPE=C3D8, ELSET=Ekou2")'
do i=1,2*nx2*(ny4+ny5)*nz
print'(i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6)',&
&i+nyousosuukou,',',&
&meshkou2(i,1),',',&
&meshkou2(i,2),',',&
&meshkou2(i,3),',',&
&meshkou2(i,4),',',&
&meshkou2(i,5),',',&
&meshkou2(i,6),',',&
&meshkou2(i,7),',',&
&meshkou2(i,8)
end do
nyousosuukou2=2*nx2*(ny4+ny5)*nz
print'("*ELEMENT, TYPE=C3D8, ELSET=Ehogou")'
do i=1,2*(nx4*ny5+nx3*(ny3+ny4+ny5))*nz
print'(i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6)',&
&i+nyousosuukou+nyousosuukou2,',',&
&meshhogou(i,1),',',&
&meshhogou(i,2),',',&
&meshhogou(i,3),',',&
&meshhogou(i,4),',',&
&meshhogou(i,5),',',&
&meshhogou(i,6),',',&
&meshhogou(i,7),',',&
&meshhogou(i,8)
end do
nyousosuuhogou=2*(nx4*ny5+nx3*(ny3+ny4+ny5))*nz
print'("*ELEMENT, TYPE=C3D8, ELSET=Emoku")'
do i=1,nx1*(ny1+ny4+ny5)*nz
print'(i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6,a,i6)',&
&i+nyousosuukou+nyousosuuhogou+nyousosuukou2,',',&
&meshmoku(i,1),',',&
&meshmoku(i,2),',',&
&meshmoku(i,3),',',&
&meshmoku(i,4),',',&
&meshmoku(i,5),',',&
&meshmoku(i,6),',',&
&meshmoku(i,7),',',&
&meshmoku(i,8)
end do

!載荷接点、拘束接点の設定
nitimen=((nx2*2+nx1+1)*(ny1+1)+(nx2+1)*(ny2-1)*2&
&+(nx3+nx2+1)*2*ny3+((nx3+nx2)*2+nx1+1)*ny4&
&+((nx4+nx3+nx2)*2+nx1+1)*(ny5+1))
print'("*NSET,NSET=kousoku")'

do i=1,nitimen*(nz+1)
if (z(i)>ellhaji-0.000001d0.and.z(i)<ellhaji+0.000001d0&
&.and.y(i)<0.000001d0) then
nkousoku=i
print'(i6,a)',nkousoku,','
end if
end do
print'("*NSET,NSET=kousoku2")'
do i=1,nitimen*(nz+1)
if (z(i)>ellall-ellhaji-0.000001d0.and.z(i)<ellall-ellhaji+0.000001d0&
&.and.y(i)<0.000001d0) then
nkousoku=i
print'(i6,a)',nkousoku,','
end if
end do
print'("*NSET,NSET=saika")'
do i=1,nitimen*(nz+1)
if (z(i)>ellall/2-0.000001d0.and.z(i)<ellall/2+0.000001d0&
&.and.y(i)>h1+h2+h3+h4+h5-0.0000001d0) then
nsaika=i
print'(i6,a)',nsaika,','
end if
end do
! 境界条件
print'("*BOUNDARY")'
print'("kousoku,1,3")'
print'("kousoku2,1,2")'
!print'("kousoku2,2")'
! 木材の設定
print'("*MATERIAL,NAME=ELmoku")'
print'("*ELASTIC,TYPE=ORTHOROPIC")'
call ortho(e66,exx,eyy,ezz,poixy,poixz,poiyz,gyz,&
& gxz,gxy,poiyx,poizx,poizy)
print'(f12.4,a,f12.4,a,f12.4,a,&
&f12.4,a,f12.4,a,f12.4,a,f12.4,&
& a ,f12.4,a)',&
&e66(1,1),',',e66(1,2),',',e66(2,2),',',e66(1,3),','& 
&,e66(2,3),',',e66(3,3),',',e66(6,6),',',e66(5,5),','
print'(f12.4,a,a)',e66(4,4),',','293'
print'("*MATERIAL,NAME=ELkou")'
print'("*ELASTIC")'
print'("206.d3, 0.3")'
print'("*SOLID SECTION,ELSET=Emoku,MATERIAL=ELmoku")'
print'("*SOLID SECTION,ELSET=Ekou,MATERIAL=ELkou")'
print'("*SOLID SECTION,ELSET=Ekou2,MATERIAL=ELkou")'
print'("*SOLID SECTION,ELSET=Ehogou,MATERIAL=ELkou")'
! 載荷条件
print'("*STEP")'
print'("*STATIC,SOLVER=SPOOLES")'
print'("*CLOAD")'
print'(A,a,i6,a,1pe13.5)','saika',',',2,',',p/nx
!!p/((nx+1)*(ny+1))

! datのオプション
print'("*NODE PRINT,NSET=saika")'
print'("U")'
print'("*NODE FILE")'
print'("U")'
print'("*END STEP")'
!
!
!
end
!######## 直交異方性の定数を出すプログラム ########
subroutine ortho(e66,exx,eyy,ezz,poixy,poixz,poiyz,gyz,&
&gxz,gxy,poiyx,poizx,poizy)
implicit real*8(a-h,o-z)
dimension e66(6,6),b(3,3)
!応力－ひずみ行列：e66
do i=1,6
do j=1,6
e66(i,j)=0.d0
end do
end do
!  
e66(1,1)=1.d0/exx
e66(1,2)=-poixy/exx
e66(1,3)=-poixz/exx
e66(2,1)=-poiyx/eyy
e66(2,2)=1.d0/eyy
e66(2,3)=-poiyz/eyy
e66(3,1)=-poizx/ezz
e66(3,2)=-poizy/ezz
e66(3,3)=1.d0/ezz
!
!****** 逆行列を取って、応力－ひずみ行列に変換する******
det=e66(1,1)*e66(2,2)*e66(3,3)+e66(2,1)*e66(3,2)*e66(1,3)&
&+e66(3,1)*e66(1,2)*e66(2,3)-e66(2,1)*e66(1,2)*e66(3,3)&
&-e66(3,1)*e66(2,2)*e66(1,3)-e66(1,1)*e66(3,2)*e66(2,3)
b(1,1)=(-1.d0)**(1+1)*(e66(2,2)*e66(3,3)-e66(3,2)*e66(2,3))
b(1,2)=(-1.d0)**(1+2)*(e66(2,1)*e66(3,3)-e66(3,1)*e66(2,3))
b(1,3)=(-1.d0)**(1+3)*(e66(2,1)*e66(3,2)-e66(3,1)*e66(2,2))
b(2,1)=(-1.d0)**(2+1)*(e66(1,2)*e66(3,3)-e66(3,2)*e66(1,3))
b(2,2)=(-1.d0)**(2+2)*(e66(1,1)*e66(3,3)-e66(3,1)*e66(1,3))
b(2,3)=(-1.d0)**(2+3)*(e66(1,1)*e66(3,2)-e66(3,1)*e66(1,2))
b(3,1)=(-1.d0)**(3+1)*(e66(1,2)*e66(2,3)-e66(2,2)*e66(1,3))
b(3,2)=(-1.d0)**(3+2)*(e66(1,1)*e66(2,3)-e66(2,1)*e66(1,3))
b(3,3)=(-1.d0)**(3+3)*(e66(1,1)*e66(2,2)-e66(2,1)*e66(1,2))
do i=1,3
do j=1,3
e66(i,j)=b(j,i)/det
end do
end do
!
!****** せん断補正係数を入力 ******
!print*,'xy面のせん断弾性係数を入れて下さい'
!read*, gxy
e66(4,4)=gyz
!print*,'xz面のせん断弾性係数を入れて下さい'
!read*, gxz
e66(5,5)=gxz
!print*,'yz面のせん断弾性係数を入れて下さい'
!read*, gyz
e66(6,6)=gxy
!
!
return
end



