- 积分
- 6
- 注册时间
- 2007-12-28
- 仿真币
-
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2013-8-13 13:39:40
|
显示全部楼层
来自 台湾
ldhltw 发表于 2013-8-13 10:55
http://wenku.baidu.com/view/501d931352d380eb62946d7c.html
版主你好
非常謝謝你的建議
只是測試過這些指令:
/GROPT
/FORMAT
/GFORMAT
發現仍無法改變"運算子結果"之實際數據小數位數
後來將這些需要運算的算式寫入檔案(RY0 =(9.3/2-0.3-rL/2))再讀出
利用*vwrite與/input
發現確實有運算後之錯誤位數(RY0= 3.890000000000000568)
透過控制寫入檔案之位數方能消除不正常之位數
同時也發現更多錯誤存在: 只要有運算的公式就有機率存在不正常位數(如RY0+rL/2...等)
這不知道是否為ANSYS之BUG?
只是有時後不同點之不正常位數剛好相同, 而使點距為0(錯+錯=對)
後來透過控制精度寫入檔案 :所有變數以及運算子結果(賦予變數代號) 後 在讀檔 解此問題
以下是寫入其中1個變數之例:
(異常點距36~45變成正常,正常點距25~46變成異常. 起因乃運算子結果位數異常)
FINISH
/CLEAR
!/GROPT,VIEW,ON
!/GROPT,STAT
!/FORMAT,,F,18,6
!/GFORMAT,F,10,3
!/GFORMAT,DEFA
rW= 1
rL = 0.92
rH = 0.015
AgW= 1.3
AgL = 0.25
AgH = 0.011
H = 0.6
RX0 = 0
RY0 =(9.3/2-0.3-rL/2)
! RY0 = 3.89
AgX1 = 0
AgY1 = 4.475
AgX2 = 0
AgY2 = 3.305
!asd = RY0
!asd = RY0-rL/2
!asd = RY0+rL/2
*cfopen,temp,txt
*vwrite,RY0
('RY0='f10.6)
!('RY0='f24.18)
*cfclos
/input,temp,txt
/prep7
K,25, AgX1-AgW/2, AgY1-AgL/2, H
K,26, AgX1-AgW/2, AgY1+AgL/2, H
K,27, AgX1+AgW/2, AgY1+AgL/2, H
K,28, AgX1+AgW/2, AgY1-AgL/2, H
K,29, AgX1-AgW/2, AgY1-AgL/2, H+AgH
K,30, AgX1-AgW/2, AgY1+AgL/2, H+AgH
K,31, AgX1+AgW/2, AgY1+AgL/2, H+AgH
K,32, AgX1+AgW/2, AgY1-AgL/2, H+AgH
K,35, AgX2-AgW/2, AgY2-AgL/2, H
K,36, AgX2-AgW/2, AgY2+AgL/2, H
K,37, AgX2+AgW/2, AgY2+AgL/2, H
K,38, AgX2+AgW/2, AgY2-AgL/2, H
K,39, AgX2-AgW/2, AgY2-AgL/2, H+AgH
K,40, AgX2-AgW/2, AgY2+AgL/2, H+AgH
K,41, AgX2+AgW/2, AgY2+AgL/2, H+AgH
K,42, AgX2+AgW/2, AgY2-AgL/2, H+AgH
K,45, RX0-rW/2, RY0-rL/2, H
K,46, RX0-rW/2, RY0+rL/2, H
K,47, RX0+rW/2, RY0+rL/2, H
K,48, RX0+rW/2, RY0-rL/2, H
K,49, RX0-rW/2, RY0-rL/2, H+rH
K,50, RX0-rW/2, RY0+rL/2, H+rH
K,51, RX0+rW/2, RY0+rL/2, H+rH
K,52, RX0+rW/2, RY0-rL/2, H+rH
|
|