fem.vue 58 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702
  1. <template>
  2. <div class="leading fem">
  3. <div class="scal">
  4. <div class="toolbar-part-detail lbg_color1 ">
  5. <!-- 工具栏 -->
  6. <!-- <transformtool ref="transform" :servertype="servertype" :projectId='project.projectId' :wstep='wstep' :bStep='bStep' :vStep='vStep'></transformtool> -->
  7. <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
  8. <el-tab-pane label="几何建模" name="one"><geometry></geometry></el-tab-pane>
  9. <el-tab-pane label="网格划分" name="twos"> <meshindex></meshindex></el-tab-pane>
  10. <!-- 集合定义 -->
  11. <el-tab-pane label="集合定义" name="two">
  12. <div class="imgzong">
  13. <div class="item1" v-for="(itemcj,index) in jihlist" :key="'two-'+ index" :class="{activeOrange:active=='two-'+ index}" @click="clickgeometry($event,index,'two-'+ index)">
  14. <el-tooltip class="item" effect="dark" :content="itemcj.titlie" placement="bottom">
  15. <el-image :src="itemcj.icon" fit="cover" />
  16. </el-tooltip>
  17. </div>
  18. </div>
  19. </el-tab-pane>
  20. <!-- 属性设置 -->
  21. <el-tab-pane label="属性设置" name="three">
  22. <div class="imgzong">
  23. <div class="item1" v-for="(item,index) in shxlist" :key="'three-'+ index" :class="{activeOrange:active=='three-'+ index}" @click="clickgeometry($event,index,'three-'+ index)">
  24. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  25. <el-image :src="item.icon" fit="cover" />
  26. </el-tooltip>
  27. </div>
  28. </div>
  29. </el-tab-pane>
  30. <!-- 载荷边界 -->
  31. <el-tab-pane label="载荷边界" name="four">
  32. <div class="imgzong">
  33. <div class="item1" v-for="(item,index) in zhlist" :key="'four-'+ index" :class="{activeOrange:active=='four-'+ index}" @click="clickgeometry($event,index,'four-'+ index)">
  34. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  35. <el-image :src="item.icon" fit="cover" />
  36. </el-tooltip>
  37. </div>
  38. <span class="shu">|</span>
  39. <div class="item1" v-for="(item,index) in zhlist2" :key="'four1-'+ index" :class="{activeOrange:active=='four1-'+ index}" @click="clickgeometry($event,index,'four1-'+ index)">
  40. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  41. <el-image :src="item.icon" fit="cover" />
  42. </el-tooltip>
  43. </div>
  44. <span class="shu">|</span>
  45. <div class="item1" v-for="(item,index) in zhlist3" :key="'four2-'+ index" :class="{activeOrange:active=='four2-'+ index}" @click="clickgeometry($event,index,'four2-'+ index)">
  46. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  47. <el-image :src="item.icon" fit="cover" />
  48. </el-tooltip>
  49. </div>
  50. <span class="shu">|</span>
  51. <div class="item1" v-for="(item,index) in zhlist4" :key="'four3-'+ index" :class="{activeOrange:active=='four3-'+ index}" @click="clickgeometry($event,index,'four3-'+ index)">
  52. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  53. <el-image :src="item.icon" fit="cover" />
  54. </el-tooltip>
  55. </div>
  56. </div>
  57. </el-tab-pane>
  58. <!-- 求解控制 -->
  59. <el-tab-pane label="求解控制" name="five">
  60. <div class="imgzong" v-if="femnum=='FEMLab(结构力学)'">
  61. <div class="item1" v-for="(item,index) in fexkz" :key="'five-'+ index" :class="{activeOrange:active=='five-'+ index}" @click="clickgeometry($event,index,'five-'+ index)">
  62. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  63. <el-image :src="item.icon" fit="cover" />
  64. </el-tooltip>
  65. </div>
  66. <span class="shu">|</span>
  67. <div v-if="bxval=='0'">
  68. <div class="item1" v-for="(item,index) in fexkz2" :key="'five2-'+ index" :class="{activeOrange:active=='five2-'+ index}" @click="clickgeometry($event,index,'five2-'+ index)">
  69. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  70. <el-image :src="item.icon" fit="cover" />
  71. </el-tooltip>
  72. </div>
  73. </div>
  74. <div v-if="bxval=='1'">
  75. <div class="item1" v-for="(item,index) in fexkz3" :key="'five3-'+ index" :class="{activeOrange:active=='five3-'+ index}" @click="clickgeometry($event,index,'five3-'+ index)">
  76. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  77. <el-image :src="item.icon" fit="cover" />
  78. </el-tooltip>
  79. </div>
  80. </div>
  81. <div v-if="bxval=='2'">
  82. <div class="item1" v-for="(item,index) in fexkz4" :key="'five4-'+ index" :class="{activeOrange:active=='five4-'+ index}" @click="clickgeometry($event,index,'five4-'+ index)">
  83. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  84. <el-image :src="item.icon" fit="cover" />
  85. </el-tooltip>
  86. </div>
  87. </div>
  88. <div v-if="bxval=='3'">
  89. <div class="item1" v-for="(item,index) in fexkz5" :key="'five5-'+ index" :class="{activeOrange:active=='five5-'+ index}" @click="clickgeometry($event,index,'five5-'+ index)">
  90. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  91. <el-image :src="item.icon" fit="cover" />
  92. </el-tooltip>
  93. </div>
  94. </div>
  95. </div>
  96. <div class="imgzong" v-if="femnum=='FEMLab(结构力学)版本2'">
  97. <div class="item1" v-for="(item,index) in fexkz6" :key="'five11-'+ index" :class="{activeOrange:active=='five11-'+ index}" @click="clickgeometry($event,index,'five11-'+ index)">
  98. <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
  99. <el-image :src="item.icon" fit="cover" />
  100. </el-tooltip>
  101. </div>
  102. </div>
  103. </el-tab-pane>
  104. <el-tab-pane label="结果查看" name="six"> <result></result></el-tab-pane>
  105. <el-tab-pane label="工具箱" name="seven"><toolindex></toolindex></el-tab-pane>
  106. </el-tabs>
  107. </div>
  108. </div>
  109. <!-- 弹出框 创建集合-->
  110. <el-dialog
  111. v-if="active=='two-0'"
  112. :visible.sync="dialog.create_visiable"
  113. :close-on-click-modal="false"
  114. @close='activecleer()'
  115. class="dialog"
  116. :modal='false'
  117. custom-class='dialoglocation dialog_color'
  118. width="385px"
  119. :style="styX"
  120. >
  121. <div slot="title" class=dialog_header>
  122. <el-image class="imge" :src="c1" fit="cover" />
  123. <span class="text-color">创建集合</span>
  124. </div>
  125. <div class="selecr">
  126. <el-form>
  127. <el-form-item label="集合类型" :label-width="formLabelWidth2">
  128. <el-select @change="changest" v-model="jhval" placeholder="请选择">
  129. <el-option
  130. v-for="item in jhlist"
  131. :key="item.value"
  132. :label="item.name"
  133. :value="item.value"
  134. >
  135. </el-option>
  136. </el-select>
  137. </el-form-item>
  138. <div class="line">
  139. <div class="linetext">点集合</div>
  140. </div>
  141. <el-form-item label="集合名称" :label-width="formLabelWidth2">
  142. <el-input v-model="form.name" autocomplete="off"></el-input>
  143. </el-form-item>
  144. <div class="btnaniu">
  145. <el-button plain class="cj">创建</el-button>
  146. <el-button plain class="cj">清除</el-button>
  147. <el-button plain class="cj">编辑</el-button>
  148. <el-button plain class="cj">保存</el-button>
  149. </div>
  150. <el-form-item label="集合列表" :label-width="formLabelWidth2">
  151. <el-select @change="changest" v-model="jhval2" placeholder="请选择">
  152. <el-option
  153. v-for="item in jhlist2"
  154. :key="item.value"
  155. :label="item.name"
  156. :value="item.value"
  157. >
  158. </el-option>
  159. </el-select>
  160. </el-form-item>
  161. </el-form>
  162. </div>
  163. <div slot="footer" class="dialog-footer">
  164. <el-button type="info" @click="dialog.create_visiable = false">取消</el-button>
  165. <el-button type="primary" @click="dialog.create_visiable = false"
  166. >确定</el-button
  167. >
  168. </div>
  169. </el-dialog>
  170. <!-- 单元属性-->
  171. <el-dialog
  172. v-if="active=='three-0'"
  173. :visible.sync="dialog.attribute_visiable"
  174. :close-on-click-modal="false"
  175. @close='activecleer()'
  176. class="dialog"
  177. :modal='false'
  178. custom-class='dialoglocation dialog_color'
  179. width="385px"
  180. :style="styX"
  181. >
  182. <div slot="title" class=dialog_header>
  183. <el-image class="imge" :src="shx" fit="cover" />
  184. <span class="text-color">单元属性</span>
  185. </div>
  186. <div class="selecr">
  187. <el-form>
  188. <el-form-item label="单元类型" :label-width="formLabelWidth2">
  189. <el-select @change="changest" v-model="jhval3" placeholder="请选择">
  190. <el-option
  191. v-for="item in jhlist3"
  192. :key="item.value"
  193. :label="item.name"
  194. :value="item.value"
  195. >
  196. </el-option>
  197. </el-select>
  198. </el-form-item>
  199. <el-form-item label="单元阶次" :label-width="formLabelWidth2">
  200. <el-select @change="changest" v-model="jhval4" placeholder="请选择">
  201. <el-option
  202. v-for="item in jhlist4"
  203. :key="item.value"
  204. :label="item.name"
  205. :value="item.value"
  206. >
  207. </el-option>
  208. </el-select>
  209. </el-form-item>
  210. </el-form>
  211. </div>
  212. <div slot="footer" class="dialog-footer">
  213. <el-button type="info" @click="dialog.attribute_visiable = false">取消</el-button>
  214. <el-button type="primary" @click="dialog.attribute_visiable = false"
  215. >确定</el-button
  216. >
  217. </div>
  218. </el-dialog>
  219. <!-- 材料属性 -->
  220. <el-dialog
  221. v-if="active=='three-1'"
  222. :visible.sync="dialog.materials_visiable"
  223. :close-on-click-modal="false"
  224. @close='activecleer()'
  225. class="dialog"
  226. :modal='false'
  227. custom-class='dialoglocation dialog_color'
  228. width="385px"
  229. :style="styX"
  230. >
  231. <div slot="title" class=dialog_header>
  232. <el-image class="imge" :src="shx2" fit="cover" />
  233. <span class="text-color">材料属性</span>
  234. </div>
  235. <div class="selecr">
  236. <el-form>
  237. <el-form-item label="名称" :label-width="formLabelWidth2">
  238. <el-input v-model="form.name" autocomplete="off"></el-input>
  239. </el-form-item>
  240. <el-form-item label="密度" :label-width="formLabelWidth2">
  241. <el-input v-model="form.name" autocomplete="off"></el-input>
  242. </el-form-item>
  243. <el-checkbox v-model="checked">温度相关</el-checkbox>
  244. <div class="line">
  245. <div class="linetext">弹性</div>
  246. </div>
  247. <el-form-item label="弹性模量" :label-width="formLabelWidth2">
  248. <el-input v-model="form.name" autocomplete="off"></el-input>
  249. </el-form-item>
  250. <el-form-item label="泊松比" :label-width="formLabelWidth2">
  251. <el-input v-model="form.name" autocomplete="off"></el-input>
  252. </el-form-item>
  253. <div class="line">
  254. <div class="linetext">塑性</div>
  255. </div>
  256. <el-form-item label="屈服应力" :label-width="formLabelWidth2">
  257. <el-input v-model="form.name" autocomplete="off"></el-input>
  258. </el-form-item>
  259. <el-form-item label="泊松比" :label-width="formLabelWidth2">
  260. <el-input v-model="form.name" autocomplete="off"></el-input>
  261. </el-form-item>
  262. <div class="line">
  263. <div class="linetext">热</div>
  264. </div>
  265. <el-form-item label="热到率" :label-width="formLabelWidth2">
  266. <el-input v-model="form.name" autocomplete="off"></el-input>
  267. </el-form-item>
  268. <el-form-item label="比热" :label-width="formLabelWidth2">
  269. <el-input v-model="form.name" autocomplete="off"></el-input>
  270. </el-form-item>
  271. <el-form-item label="热扩散系数" :label-width="formLabelWidth2">
  272. <el-input v-model="form.name" autocomplete="off"></el-input>
  273. </el-form-item>
  274. <el-form-item label="零温" :label-width="formLabelWidth2">
  275. <el-input v-model="form.name" autocomplete="off"></el-input>
  276. </el-form-item>
  277. </el-form>
  278. </div>
  279. <div slot="footer" class="dialog-footer">
  280. <el-button type="info" @click="dialog.materials_visiable= false">取消</el-button>
  281. <el-button type="primary" @click="dialog.materials_visiable = false"
  282. >确定</el-button
  283. >
  284. </div>
  285. </el-dialog>
  286. <!-- 截面属性-->
  287. <el-dialog
  288. v-if="active=='three-2'"
  289. :visible.sync="dialog.cross_visiable"
  290. :close-on-click-modal="false"
  291. @close='activecleer()'
  292. class="dialog"
  293. :modal='false'
  294. custom-class='dialoglocation dialog_color'
  295. width="385px"
  296. :style="styX"
  297. >
  298. <div slot="title" class=dialog_header>
  299. <el-image class="imge" :src="shx3" fit="cover" />
  300. <span class="text-color">截面属性</span>
  301. </div>
  302. <div class="selecr">
  303. <el-form>
  304. <el-form-item label="类型" :label-width="formLabelWidth2">
  305. <el-select @change="changest" v-model="femval" placeholder="请选择">
  306. <el-option
  307. v-for="item in femlist"
  308. :key="item.value"
  309. :label="item.name"
  310. :value="item.value"
  311. >
  312. </el-option>
  313. </el-select>
  314. </el-form-item>
  315. <div v-if="femval!='2'">
  316. <el-form-item label="截面名称" :label-width="formLabelWidth2">
  317. <el-input v-model="form.name" autocomplete="off"></el-input>
  318. </el-form-item>
  319. <el-form-item label="板壳厚度" :label-width="formLabelWidth2" v-if="femval=='1'">
  320. <el-input v-model="form.name" autocomplete="off"></el-input>
  321. </el-form-item>
  322. <el-form-item label="材料" :label-width="formLabelWidth2">
  323. <el-select @change="changest" v-model="femval2" placeholder="请选择">
  324. <el-option
  325. v-for="item in femlist2"
  326. :key="item.value"
  327. :label="item.name"
  328. :value="item.value"
  329. >
  330. </el-option>
  331. </el-select>
  332. </el-form-item>
  333. <el-form-item label="区域" :label-width="formLabelWidth2">
  334. <el-select @change="changest" v-model="femval3" placeholder="请选择">
  335. <el-option
  336. v-for="item in femlist3"
  337. :key="item.value"
  338. :label="item.name"
  339. :value="item.value"
  340. >
  341. </el-option>
  342. </el-select>
  343. </el-form-item>
  344. </div>
  345. </el-form>
  346. </div>
  347. <div slot="footer" class="dialog-footer">
  348. <el-button type="info" @click="dialog.cross_visiable = false">取消</el-button>
  349. <el-button type="primary" @click="dialog.cross_visiable = false"
  350. >确定</el-button
  351. >
  352. </div>
  353. </el-dialog>
  354. <!-- 位移约束力 -->
  355. <el-dialog
  356. v-if="active=='four-0'"
  357. :visible.sync="dialog.Offset_visiable"
  358. :close-on-click-modal="false"
  359. @close='activecleer()'
  360. class="dialog"
  361. :modal='false'
  362. custom-class='dialoglocation dialog_color'
  363. width="385px"
  364. :style="styX"
  365. >
  366. <div slot="title" class=dialog_header>
  367. <el-image class="imge" :src="shx4" fit="cover" />
  368. <span class="text-color">位移约束力</span>
  369. </div>
  370. <div class="selecr">
  371. <el-form>
  372. <el-form-item label="名称" :label-width="formLabelWidth2">
  373. <el-input v-model="form.name" autocomplete="off"></el-input>
  374. </el-form-item>
  375. <el-form-item label="类型" :label-width="formLabelWidth2">
  376. <el-input v-model="form.leixing" autocomplete="off"></el-input>
  377. </el-form-item>
  378. <el-form-item label="单元类型" :label-width="formLabelWidth2">
  379. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  380. <el-option
  381. v-for="item in femlist4"
  382. :key="item.value"
  383. :label="item.name"
  384. :value="item.value"
  385. >
  386. </el-option>
  387. </el-select>
  388. </el-form-item>
  389. </el-form>
  390. </div>
  391. <div slot="footer" class="dialog-footer">
  392. <el-button type="info" @click="dialog.Offset_visiable = false">取消</el-button>
  393. <el-button type="primary" @click="dialog.Offset_visiable = false"
  394. >确定</el-button
  395. >
  396. </div>
  397. </el-dialog>
  398. <!-- 集中力 -->
  399. <el-dialog
  400. v-if="active=='four-2'"
  401. :visible.sync="dialog.singleforce_visiable"
  402. :close-on-click-modal="false"
  403. @close='activecleer()'
  404. class="dialog"
  405. :modal='false'
  406. custom-class='dialoglocation dialog_color'
  407. width="385px"
  408. :style="styX"
  409. >
  410. <div slot="title" class=dialog_header>
  411. <el-image class="imge" :src="shx6" fit="cover" />
  412. <span class="text-color">集中力</span>
  413. </div>
  414. <div class="selecr">
  415. <el-form>
  416. <el-form-item label="名称" :label-width="formLabelWidth2">
  417. <el-input v-model="form.name" autocomplete="off"></el-input>
  418. </el-form-item>
  419. <el-form-item label="单元类型" :label-width="formLabelWidth2">
  420. <el-select @change="changest" v-model="femval5" placeholder="请选择">
  421. <el-option
  422. v-for="item in femlist5"
  423. :key="item.value"
  424. :label="item.name"
  425. :value="item.value"
  426. >
  427. </el-option>
  428. </el-select>
  429. </el-form-item>
  430. <el-form-item label="CF1" :label-width="formLabelWidth2">
  431. <el-input v-model="form.name" autocomplete="off"></el-input>
  432. </el-form-item>
  433. <el-form-item label="CF2" :label-width="formLabelWidth2">
  434. <el-input v-model="form.name" autocomplete="off"></el-input>
  435. </el-form-item>
  436. <el-form-item label="CF3" :label-width="formLabelWidth2">
  437. <el-input v-model="form.name" autocomplete="off"></el-input>
  438. </el-form-item>
  439. </el-form>
  440. </div>
  441. <div slot="footer" class="dialog-footer">
  442. <el-button type="info" @click="dialog.singleforce_visiable = false">取消</el-button>
  443. <el-button type="primary" @click="dialog.singleforce_visiable = false"
  444. >确定</el-button
  445. >
  446. </div>
  447. </el-dialog>
  448. <!-- 温度约束 -->
  449. <el-dialog
  450. v-if="active=='four-4'"
  451. :visible.sync="dialog.jdtemp_visiable"
  452. :close-on-click-modal="false"
  453. @close='activecleer()'
  454. class="dialog"
  455. :modal='false'
  456. custom-class='dialoglocation dialog_color'
  457. width="385px"
  458. :style="styX"
  459. >
  460. <div slot="title" class=dialog_header>
  461. <el-image class="imge" :src="shx8" fit="cover" />
  462. <span class="text-color">温度约束</span>
  463. </div>
  464. <div class="selecr">
  465. <el-form>
  466. <el-form-item label="名称" :label-width="formLabelWidth2">
  467. <el-input v-model="form.name" autocomplete="off"></el-input>
  468. </el-form-item>
  469. <el-form-item label="区域" :label-width="formLabelWidth2">
  470. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  471. <el-option
  472. v-for="item in femlist4"
  473. :key="item.value"
  474. :label="item.name"
  475. :value="item.value"
  476. >
  477. </el-option>
  478. </el-select>
  479. </el-form-item>
  480. <el-form-item label="温度值" :label-width="formLabelWidth2">
  481. <el-input v-model="form.name" autocomplete="off"></el-input>
  482. </el-form-item>
  483. </el-form>
  484. </div>
  485. <div slot="footer" class="dialog-footer">
  486. <el-button type="info" @click="dialog.jdtemp_visiable = false">取消</el-button>
  487. <el-button type="primary" @click="dialog.jdtemp_visiable = false"
  488. >确定</el-button
  489. >
  490. </div>
  491. </el-dialog>
  492. <!-- 单元类压力 -->
  493. <el-dialog
  494. v-if="active=='four1-2'"
  495. :visible.sync="dialog.dybar_visiable"
  496. :close-on-click-modal="false"
  497. @close='activecleer()'
  498. class="dialog"
  499. :modal='false'
  500. custom-class='dialoglocation dialog_color'
  501. width="385px"
  502. :style="styX"
  503. >
  504. <div slot="title" class=dialog_header>
  505. <el-image class="imge" :src="shx11" fit="cover" />
  506. <span class="text-color">压力</span>
  507. </div>
  508. <div class="selecr">
  509. <el-form>
  510. <el-form-item label="名称" :label-width="formLabelWidth2">
  511. <el-input v-model="form.name" autocomplete="off"></el-input>
  512. </el-form-item>
  513. <el-form-item label="区域" :label-width="formLabelWidth2">
  514. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  515. <el-option
  516. v-for="item in femlist4"
  517. :key="item.value"
  518. :label="item.name"
  519. :value="item.value"
  520. >
  521. </el-option>
  522. </el-select>
  523. </el-form-item>
  524. <el-form-item label="载荷值" :label-width="formLabelWidth2">
  525. <el-input v-model="form.name" autocomplete="off"></el-input>
  526. </el-form-item>
  527. </el-form>
  528. </div>
  529. <div slot="footer" class="dialog-footer">
  530. <el-button type="info" @click="dialog.dybar_visiable = false">取消</el-button>
  531. <el-button type="primary" @click="dialog.dybar_visiable = false"
  532. >确定</el-button
  533. >
  534. </div>
  535. </el-dialog>
  536. <!-- 单元类重力 -->
  537. <el-dialog
  538. v-if="active=='four1-5'"
  539. :visible.sync="dialog.dygravity_visiable"
  540. :close-on-click-modal="false"
  541. @close='activecleer()'
  542. class="dialog"
  543. :modal='false'
  544. custom-class='dialoglocation dialog_color'
  545. width="385px"
  546. :style="styX"
  547. >
  548. <div slot="title" class=dialog_header>
  549. <el-image class="imge" :src="shx14" fit="cover" />
  550. <span class="text-color">重力</span>
  551. </div>
  552. <div class="selecr">
  553. <el-form>
  554. <el-form-item label="名称" :label-width="formLabelWidth2">
  555. <el-input v-model="form.name" autocomplete="off"></el-input>
  556. </el-form-item>
  557. <el-form-item label="区域" :label-width="formLabelWidth2">
  558. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  559. <el-option
  560. v-for="item in femlist4"
  561. :key="item.value"
  562. :label="item.name"
  563. :value="item.value"
  564. >
  565. </el-option>
  566. </el-select>
  567. </el-form-item>
  568. <el-form-item label="重力加速度" :label-width="formLabelWidth2">
  569. <el-input v-model="form.name" autocomplete="off"></el-input>
  570. </el-form-item>
  571. <el-form-item label="X向分量" :label-width="formLabelWidth2">
  572. <el-input v-model="form.name" autocomplete="off"></el-input>
  573. </el-form-item>
  574. <el-form-item label="Y向分量" :label-width="formLabelWidth2">
  575. <el-input v-model="form.name" autocomplete="off"></el-input>
  576. </el-form-item>
  577. <el-form-item label="Z向分量" :label-width="formLabelWidth2">
  578. <el-input v-model="form.name" autocomplete="off"></el-input>
  579. </el-form-item>
  580. </el-form>
  581. </div>
  582. <div slot="footer" class="dialog-footer">
  583. <el-button type="info" @click="dialog.dygravity_visiable = false">取消</el-button>
  584. <el-button type="primary" @click="dialog.dygravity_visiable = false"
  585. >确定</el-button
  586. >
  587. </div>
  588. </el-dialog>
  589. <!-- 初始条件的温度 -->
  590. <el-dialog
  591. v-if="active=='four2-1'"
  592. :visible.sync="dialog.cstjtemp_visiable"
  593. :close-on-click-modal="false"
  594. @close='activecleer()'
  595. class="dialog"
  596. :modal='false'
  597. custom-class='dialoglocation dialog_color'
  598. width="385px"
  599. :style="styX"
  600. >
  601. <div slot="title" class=dialog_header>
  602. <el-image class="imge" :src="shx8" fit="cover" />
  603. <span class="text-color">温度</span>
  604. </div>
  605. <div class="selecr">
  606. <el-form>
  607. <el-form-item label="名称" :label-width="formLabelWidth2">
  608. <el-input v-model="form.name" autocomplete="off"></el-input>
  609. </el-form-item>
  610. <el-form-item label="区域" :label-width="formLabelWidth2">
  611. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  612. <el-option
  613. v-for="item in femlist4"
  614. :key="item.value"
  615. :label="item.name"
  616. :value="item.value"
  617. >
  618. </el-option>
  619. </el-select>
  620. </el-form-item>
  621. <el-form-item label="温度值" :label-width="formLabelWidth2">
  622. <el-input v-model="form.name" autocomplete="off"></el-input>
  623. </el-form-item>
  624. </el-form>
  625. </div>
  626. <div slot="footer" class="dialog-footer">
  627. <el-button type="info" @click="dialog.cstjtemp_visiable = false">取消</el-button>
  628. <el-button type="primary" @click="dialog.cstjtemp_visiable = false"
  629. >确定</el-button
  630. >
  631. </div>
  632. </el-dialog>
  633. <!-- 初始条件——速度 -->
  634. <el-dialog
  635. v-if="active=='four2-2'"
  636. :visible.sync="dialog.cstjspeed_visiable"
  637. :close-on-click-modal="false"
  638. @close='activecleer()'
  639. class="dialog"
  640. :modal='false'
  641. custom-class='dialoglocation dialog_color'
  642. width="385px"
  643. :style="styX"
  644. >
  645. <div slot="title" class=dialog_header>
  646. <el-image class="imge" :src="shx17" fit="cover" />
  647. <span class="text-color">速度</span>
  648. </div>
  649. <div class="selecr">
  650. <el-form>
  651. <el-form-item label="名称" :label-width="formLabelWidth2">
  652. <el-input v-model="form.name" autocomplete="off"></el-input>
  653. </el-form-item>
  654. <el-form-item label="区域" :label-width="formLabelWidth2">
  655. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  656. <el-option
  657. v-for="item in femlist4"
  658. :key="item.value"
  659. :label="item.name"
  660. :value="item.value"
  661. >
  662. </el-option>
  663. </el-select>
  664. </el-form-item>
  665. <el-form-item label="速度值" :label-width="formLabelWidth2">
  666. <el-input v-model="form.name" autocomplete="off"></el-input>
  667. </el-form-item>
  668. <el-form-item label="X方向" :label-width="formLabelWidth2">
  669. <el-input v-model="form.name" autocomplete="off"></el-input>
  670. </el-form-item>
  671. <el-form-item label="Y方向" :label-width="formLabelWidth2">
  672. <el-input v-model="form.name" autocomplete="off"></el-input>
  673. </el-form-item>
  674. <el-form-item label="Z方向" :label-width="formLabelWidth2">
  675. <el-input v-model="form.name" autocomplete="off"></el-input>
  676. </el-form-item>
  677. </el-form>
  678. </div>
  679. <div slot="footer" class="dialog-footer">
  680. <el-button type="info" @click="dialog.cstjspeed_visiable = false">取消</el-button>
  681. <el-button type="primary" @click="dialog.cstjspeed_visiable = false"
  682. >确定</el-button
  683. >
  684. </div>
  685. </el-dialog>
  686. <!-- 接触属性 -->
  687. <el-dialog
  688. v-if="active=='four3-1'"
  689. :visible.sync="dialog.properties_visiable"
  690. :close-on-click-modal="false"
  691. @close='activecleer()'
  692. class="dialog"
  693. :modal='false'
  694. custom-class='dialoglocation dialog_color'
  695. width="385px"
  696. :style="styX"
  697. >
  698. <div slot="title" class=dialog_header>
  699. <el-image class="imge" :src="shx22" fit="cover" />
  700. <span class="text-color">接触属性</span>
  701. </div>
  702. <div class="selecr">
  703. <el-form>
  704. <el-form-item label="名称" :label-width="formLabelWidth2">
  705. <el-input v-model="form.name" autocomplete="off"></el-input>
  706. </el-form-item>
  707. <el-form-item label="表面行为" :label-width="formLabelWidth2">
  708. <el-input v-model="form.xingwei" autocomplete="off"></el-input>
  709. </el-form-item>
  710. <el-form-item label="摩擦系数" :label-width="formLabelWidth2">
  711. <el-input v-model="form.xishu" autocomplete="off"></el-input>
  712. </el-form-item>
  713. </el-form>
  714. </div>
  715. <div slot="footer" class="dialog-footer">
  716. <el-button type="info" @click="dialog.properties_visiable = false">取消</el-button>
  717. <el-button type="primary" @click="dialog.properties_visiable = false"
  718. >确定</el-button
  719. >
  720. </div>
  721. </el-dialog>
  722. <!-- 接触对 -->
  723. <el-dialog
  724. v-if="active=='four3-2'"
  725. :visible.sync="dialog.contactpair_visiable"
  726. :close-on-click-modal="false"
  727. @close='activecleer()'
  728. class="dialog"
  729. :modal='false'
  730. custom-class='dialoglocation dialog_color'
  731. width="385px"
  732. :style="styX"
  733. >
  734. <div slot="title" class=dialog_header>
  735. <el-image class="imge" :src="shx23" fit="cover" />
  736. <span class="text-color">接触对</span>
  737. </div>
  738. <div class="selecr">
  739. <el-form>
  740. <el-form-item label="名称" :label-width="formLabelWidth2">
  741. <el-input v-model="form.name" autocomplete="off"></el-input>
  742. </el-form-item>
  743. <el-form-item label="表面相互作用" :label-width="formLabelWidth2">
  744. <el-select @change="changest" v-model="femval11" placeholder="请选择">
  745. <el-option
  746. v-for="item in femlist11"
  747. :key="item.value"
  748. :label="item.name"
  749. :value="item.value"
  750. >
  751. </el-option>
  752. </el-select>
  753. </el-form-item>
  754. <el-form-item label="类型" :label-width="formLabelWidth2">
  755. <el-select @change="changest" v-model="femval12" placeholder="请选择">
  756. <el-option
  757. v-for="item in femlist12"
  758. :key="item.value"
  759. :label="item.name"
  760. :value="item.value"
  761. >
  762. </el-option>
  763. </el-select>
  764. </el-form-item>
  765. <el-form-item label="从面" :label-width="formLabelWidth2">
  766. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  767. <el-option
  768. v-for="item in femlist4"
  769. :key="item.value"
  770. :label="item.name"
  771. :value="item.value"
  772. >
  773. </el-option>
  774. </el-select>
  775. </el-form-item>
  776. <el-form-item label="主面" :label-width="formLabelWidth2">
  777. <el-select @change="changest" v-model="femval4" placeholder="请选择">
  778. <el-option
  779. v-for="item in femlist4"
  780. :key="item.value"
  781. :label="item.name"
  782. :value="item.value"
  783. >
  784. </el-option>
  785. </el-select>
  786. </el-form-item>
  787. <el-form-item label="接触调整" :label-width="formLabelWidth2">
  788. <el-radio-group v-model="form.radio">
  789. <el-radio :label="0">是</el-radio>
  790. <el-radio :label="1">否</el-radio>
  791. </el-radio-group>
  792. </el-form-item>
  793. </el-form>
  794. </div>
  795. <div slot="footer" class="dialog-footer">
  796. <el-button type="info" @click="dialog.contactpair_visiable = false">取消</el-button>
  797. <el-button type="primary" @click="dialog.contactpair_visiable = false"
  798. >确定</el-button
  799. >
  800. </div>
  801. </el-dialog>
  802. <!-- 求解控制 -->
  803. <!-- 分析类型 -->
  804. <el-dialog
  805. v-if="active=='five-0'"
  806. :visible.sync="dialog.cae_visiable"
  807. :close-on-click-modal="false"
  808. @close='activecleer()'
  809. class="dialog"
  810. :modal='false'
  811. custom-class='dialoglocation dialog_color'
  812. width="385px"
  813. :style="styX"
  814. >
  815. <div slot="title" class=dialog_header>
  816. <el-image class="imge" :src="shx2" fit="cover" />
  817. <span class="text-color">分析类型</span>
  818. </div>
  819. <div class="selecr">
  820. <el-form>
  821. <el-form-item label="分析类型" :label-width="formLabelWidth2">
  822. <el-select @change="changest" v-model="bxval" placeholder="请选择">
  823. <el-option
  824. v-for="item in bxlist"
  825. :key="item.value"
  826. :label="item.name"
  827. :value="item.value"
  828. >
  829. </el-option>
  830. </el-select>
  831. </el-form-item>
  832. </el-form>
  833. </div>
  834. <div slot="footer" class="dialog-footer">
  835. <el-button type="info" @click="dialog.cae_visiable = false">取消</el-button>
  836. <el-button type="primary" @click="dialog.cae_visiable = false"
  837. >确定</el-button
  838. >
  839. </div>
  840. </el-dialog>
  841. <!-- 并行分析 -->
  842. <el-dialog
  843. v-if="active=='five-1'"
  844. :visible.sync="dialog.parallel_visiable"
  845. :close-on-click-modal="false"
  846. @close='activecleer()'
  847. class="dialog"
  848. :modal='false'
  849. custom-class='dialoglocation dialog_color'
  850. width="385px"
  851. :style="styX"
  852. >
  853. <div slot="title" class=dialog_header>
  854. <el-image class="imge" :src="shx10" fit="cover" />
  855. <span class="text-color">并行分析</span>
  856. </div>
  857. <div class="selecr">
  858. <el-form>
  859. <el-form-item label="并行分析" :label-width="formLabelWidth2">
  860. <el-select @change="changest" v-model="bxval1" placeholder="请选择">
  861. <el-option
  862. v-for="item in bxlist1"
  863. :key="item.value"
  864. :label="item.name"
  865. :value="item.value"
  866. >
  867. </el-option>
  868. </el-select>
  869. </el-form-item>
  870. </el-form>
  871. </div>
  872. <div slot="footer" class="dialog-footer">
  873. <el-button type="info" @click="dialog.parallel_visiable = false">取消</el-button>
  874. <el-button type="primary" @click="dialog.parallel_visiable = false"
  875. >确定</el-button
  876. >
  877. </div>
  878. </el-dialog>
  879. <!-- 静力分析 -->
  880. <el-dialog
  881. v-if="active=='five2-0'"
  882. :visible.sync="dialog.statical_analysis"
  883. :close-on-click-modal="false"
  884. @close='activecleer()'
  885. class="dialog"
  886. :modal='false'
  887. custom-class='dialoglocation dialog_color'
  888. width="385px"
  889. :style="styX"
  890. >
  891. <div slot="title" class=dialog_header>
  892. <el-image class="imge" :src="shx24" fit="cover" />
  893. <span class="text-color">静力分析</span>
  894. </div>
  895. <div class="selecr">
  896. <el-form>
  897. <el-form-item label="算法控制" :label-width="formLabelWidth5">
  898. <el-select @change="changest" v-model="parameterObj.solver.value" placeholder="请选择">
  899. <el-option
  900. v-for="item in jlialist1"
  901. :key="item.value"
  902. :label="item.name"
  903. :value="item.value"
  904. >
  905. </el-option>
  906. </el-select>
  907. </el-form-item>
  908. <el-form-item label="非线性开关" :label-width="formLabelWidth5">
  909. <el-radio-group v-model="parameterObj.nlgeom.value">
  910. <el-radio label="0">开</el-radio>
  911. <el-radio label="1">关</el-radio>
  912. </el-radio-group>
  913. </el-form-item>
  914. <div class="line">
  915. <div class="linetext">输出控制</div>
  916. </div>
  917. <el-form-item label="结果文件名称" :label-width="formLabelWidth5">
  918. <el-input v-model="form.name" autocomplete="off"></el-input>
  919. </el-form-item>
  920. <el-checkbox v-model="parameterObj.dump_stiff.value" true-label="true" false-label="false">刚度矩阵</el-checkbox>
  921. <el-checkbox v-model="parameterObj.strain_o.value" true-label="true" false-label="false">节点应变</el-checkbox>
  922. </el-form>
  923. </div>
  924. <div slot="footer" class="dialog-footer">
  925. <el-button type="info" @click="dialog.statical_analysis = false">取消</el-button>
  926. <el-button type="primary" @click="dialog.statical_analysis = false"
  927. >确定</el-button
  928. >
  929. </div>
  930. </el-dialog>
  931. <!-- 模态分析 -->
  932. <el-dialog
  933. v-if="active=='five3-0'"
  934. :visible.sync="dialog.model_analysis"
  935. :close-on-click-modal="false"
  936. @close='activecleer()'
  937. class="dialog"
  938. :modal='false'
  939. custom-class='dialoglocation dialog_color'
  940. width="385px"
  941. :style="styX"
  942. >
  943. <div slot="title" class=dialog_header>
  944. <el-image class="imge" :src="shx25" fit="cover" />
  945. <span class="text-color">模态分析</span>
  946. </div>
  947. <div class="selecr">
  948. <el-form>
  949. <div class="line">
  950. <div class="linetext">属性</div>
  951. </div>
  952. <el-form-item label="特征值求解方法" :label-width="formLabelWidth6">
  953. <el-select @change="changest" v-model="jliaval2" placeholder="请选择">
  954. <el-option
  955. v-for="item in jlialist2"
  956. :key="item.value"
  957. :label="item.name"
  958. :value="item.value"
  959. >
  960. </el-option>
  961. </el-select>
  962. </el-form-item>
  963. <el-form-item label="特征值个数" :label-width="formLabelWidth6">
  964. <el-input v-model="parameterObj.num_eigv.value" autocomplete="off"></el-input>
  965. </el-form-item>
  966. <el-form-item label="质量耦合开关" :label-width="formLabelWidth6">
  967. <el-radio-group v-model="parameterObj.coupled.value">
  968. <el-radio label="0">开</el-radio>
  969. <el-radio label="1">关</el-radio>
  970. </el-radio-group>
  971. </el-form-item>
  972. <div class="line">
  973. <div class="linetext">输出控制</div>
  974. </div>
  975. <el-form-item label="结果文件名称" :label-width="formLabelWidth5">
  976. <el-input v-model="form.name" autocomplete="off"></el-input>
  977. </el-form-item>
  978. <el-checkbox v-model="parameterObj.modes.dump_stiff.value" true-label="true" false-label="false">刚度矩阵</el-checkbox>
  979. <el-checkbox v-model="parameterObj.modes.dump_mass.value" true-label="true" false-label="false" >节点应变</el-checkbox>
  980. </el-form>
  981. </div>
  982. <div slot="footer" class="dialog-footer">
  983. <el-button type="info" @click="dialog.model_analysis = false">取消</el-button>
  984. <el-button type="primary" @click="dialog.model_analysis = false"
  985. >确定</el-button
  986. >
  987. </div>
  988. </el-dialog>
  989. <!-- 传热分析 -->
  990. <el-dialog
  991. v-if="active=='five4-0'"
  992. :visible.sync="dialog.heat_analysis"
  993. :close-on-click-modal="false"
  994. @close='activecleer()'
  995. class="dialog"
  996. :modal='false'
  997. custom-class='dialoglocation dialog_color'
  998. width="385px"
  999. :style="styX"
  1000. >
  1001. <div slot="title" class=dialog_header>
  1002. <el-image class="imge" :src="shx26" fit="cover" />
  1003. <span class="text-color">传热分析</span>
  1004. </div>
  1005. <div class="selecr">
  1006. <el-form>
  1007. <div class="line">
  1008. <div class="linetext">属性</div>
  1009. </div>
  1010. </el-form>
  1011. </div>
  1012. <div slot="footer" class="dialog-footer">
  1013. <el-button type="info" @click="dialog.heat_analysis = false">取消</el-button>
  1014. <el-button type="primary" @click="dialog.heat_analysis = false"
  1015. >确定</el-button
  1016. >
  1017. </div>
  1018. </el-dialog>
  1019. <!-- 瞬态响应分析 -->
  1020. <el-dialog
  1021. v-if="active=='five5-0'"
  1022. :visible.sync="dialog.transient_analysis"
  1023. :close-on-click-modal="false"
  1024. @close='activecleer()'
  1025. class="dialog"
  1026. :modal='false'
  1027. custom-class='dialoglocation dialog_color'
  1028. width="385px"
  1029. :style="styX"
  1030. >
  1031. <div slot="title" class=dialog_header>
  1032. <el-image class="imge" :src="shx27" fit="cover" />
  1033. <span class="text-color">瞬态响应分析</span>
  1034. </div>
  1035. <div class="selecr">
  1036. <el-form>
  1037. <div class="line">
  1038. <div class="linetext">属性</div>
  1039. </div>
  1040. <el-form-item label="求解方法" :label-width="formLabelWidth5">
  1041. <el-select @change="changest" v-model="jliaval3" placeholder="请选择">
  1042. <el-option
  1043. v-for="item in jlialist3"
  1044. :key="item.value"
  1045. :label="item.name"
  1046. :value="item.value"
  1047. >
  1048. </el-option>
  1049. </el-select>
  1050. </el-form-item>
  1051. <el-form-item label="输入δβN" :label-width="formLabelWidth5">
  1052. <el-input v-model="parameterObj.betad.value" autocomplete="off"></el-input>
  1053. </el-form-item>
  1054. <el-form-item label="输入αN" :label-width="formLabelWidth5">
  1055. <el-input v-model="parameterObj.alphad.value" autocomplete="off"></el-input>
  1056. </el-form-item>
  1057. <div class="line">
  1058. <div class="linetext">分析步控制</div>
  1059. </div>
  1060. <el-form-item label="总时间" :label-width="formLabelWidth5">
  1061. <el-input v-model="parameterObj.num_steps.value" autocomplete="off"></el-input>
  1062. </el-form-item>
  1063. <el-form-item label="时间步增量" :label-width="formLabelWidth5">
  1064. <el-input v-model="parameterObj.dt_str.value" autocomplete="off"></el-input>
  1065. </el-form-item>
  1066. <el-form-item label="写出频率" :label-width="formLabelWidth5">
  1067. <el-input v-model="parameterObj.freq.value" autocomplete="off"></el-input>
  1068. </el-form-item>
  1069. <el-form-item label="写出格式" :label-width="formLabelWidth5">
  1070. <el-select @change="changest" v-model="parameterObj.sort.value" placeholder="请选择">
  1071. <el-option
  1072. v-for="item in jlialist4"
  1073. :key="item.value"
  1074. :label="item.name"
  1075. :value="item.value"
  1076. >
  1077. </el-option>
  1078. </el-select>
  1079. </el-form-item>
  1080. <div class="line">
  1081. <div class="linetext">输出控制</div>
  1082. </div>
  1083. <el-form-item label="结果文件名称" :label-width="formLabelWidth5">
  1084. <el-input v-model="parameterObj.result_file.value" autocomplete="off"></el-input>
  1085. </el-form-item>
  1086. <el-checkbox v-model="parameterObj.dump_stiff.value" true-label="true" false-label="false">刚度矩阵</el-checkbox>
  1087. <el-checkbox v-model="parameterObj.strain_o.value" true-label="true" false-label="false">节点应变</el-checkbox>
  1088. <el-checkbox v-model="parameterObj.dump_mass.value" true-label="true" false-label="false">质量矩阵</el-checkbox>
  1089. </el-form>
  1090. </div>
  1091. <div slot="footer" class="dialog-footer">
  1092. <el-button type="info" @click="dialog.transient_analysis = false">取消</el-button>
  1093. <el-button type="primary" @click="dialog.transient_analysis = false"
  1094. >确定</el-button
  1095. >
  1096. </div>
  1097. </el-dialog>
  1098. <!-- 创建分析 -->
  1099. <el-dialog
  1100. v-if="active=='five11-0'"
  1101. :visible.sync="dialog.create_analysis"
  1102. :close-on-click-modal="false"
  1103. @close='activecleer()'
  1104. class="dialog"
  1105. :modal='false'
  1106. custom-class='dialoglocation dialog_color'
  1107. width="385px"
  1108. :style="styX"
  1109. >
  1110. <div slot="title" class=dialog_header>
  1111. <el-image class="imge" :src="shx28" fit="cover" />
  1112. <span class="text-color">创建分析</span>
  1113. </div>
  1114. <div class="selecr">
  1115. <el-form>
  1116. <el-form-item label="分析名称" :label-width="formLabelWidth5">
  1117. <el-input v-model="form.name" autocomplete="off"></el-input>
  1118. </el-form-item>
  1119. <el-form-item label="非线性开关" :label-width="formLabelWidth5">
  1120. <el-radio-group v-model="form.radio">
  1121. <el-radio :label="0">开</el-radio>
  1122. <el-radio :label="1">关</el-radio>
  1123. </el-radio-group>
  1124. </el-form-item>
  1125. <el-form-item label="分析类型" :label-width="formLabelWidth5">
  1126. <el-select @change="changest" v-model="cjaval" placeholder="请选择">
  1127. <el-option
  1128. v-for="item in cjalist"
  1129. :key="item.value"
  1130. :label="item.name"
  1131. :value="item.value"
  1132. >
  1133. </el-option>
  1134. </el-select>
  1135. </el-form-item>
  1136. <div v-if="cjaval=='0'" >
  1137. <el-form-item label="增量步" :label-width="formLabelWidth5">
  1138. <el-select @change="changest" v-model="cjaval2" placeholder="请选择">
  1139. <el-option
  1140. v-for="item in cjalist2"
  1141. :key="item.value"
  1142. :label="item.name"
  1143. :value="item.value"
  1144. >
  1145. </el-option>
  1146. </el-select>
  1147. </el-form-item>
  1148. <div v-if="cjaval2=='1'||cjaval2=='2'">
  1149. <el-form-item label="时间周期" :label-width="formLabelWidth5">
  1150. <el-input v-model="form.name" autocomplete="off"></el-input>
  1151. </el-form-item>
  1152. <el-form-item label="初始时间增量" :label-width="formLabelWidth5">
  1153. <el-input v-model="form.name" autocomplete="off"></el-input>
  1154. </el-form-item>
  1155. </div>
  1156. <div v-if="cjaval2=='1'">
  1157. <el-form-item label="最小时间增量" :label-width="formLabelWidth5">
  1158. <el-input v-model="form.name" autocomplete="off"></el-input>
  1159. </el-form-item>
  1160. <el-form-item label="最大时间增量" :label-width="formLabelWidth5">
  1161. <el-input v-model="form.name" autocomplete="off"></el-input>
  1162. </el-form-item>
  1163. </div>
  1164. </div>
  1165. <div v-if="cjaval=='1'">
  1166. <el-form-item label="特征数值" :label-width="formLabelWidth5">
  1167. <el-input v-model="form.name" autocomplete="off"></el-input>
  1168. </el-form-item>
  1169. <el-checkbox v-model="checked">频率输出</el-checkbox>
  1170. </div>
  1171. <el-form-item label="显示开关" :label-width="formLabelWidth5" v-if="cjaval=='5'">
  1172. <el-radio-group v-model="form.radio">
  1173. <el-radio :label="0">开</el-radio>
  1174. <el-radio :label="1">关</el-radio>
  1175. </el-radio-group>
  1176. </el-form-item>
  1177. <el-form-item label="Steady State" :label-width="formLabelWidth5" v-if="cjaval=='6'">
  1178. <el-radio-group v-model="form.radio">
  1179. <el-radio :label="0">开</el-radio>
  1180. <el-radio :label="1">关</el-radio>
  1181. </el-radio-group>
  1182. </el-form-item>
  1183. <div v-if="cjaval=='5'||cjaval=='6'">
  1184. <el-form-item label="初始时间增量" :label-width="formLabelWidth5">
  1185. <el-input v-model="form.name" autocomplete="off"></el-input>
  1186. </el-form-item>
  1187. <el-form-item label="时间周期" :label-width="formLabelWidth5">
  1188. <el-input v-model="form.name" autocomplete="off"></el-input>
  1189. </el-form-item>
  1190. </div>
  1191. </el-form>
  1192. </div>
  1193. <div slot="footer" class="dialog-footer ">
  1194. <el-button type="info" @click="dialog.create_analysis = false">取消</el-button>
  1195. <el-button type="primary" @click="dialog.create_analysis = false"
  1196. >确定</el-button
  1197. >
  1198. </div>
  1199. </el-dialog>
  1200. </div>
  1201. </template>
  1202. <script>
  1203. import geometry from '../geometry/index.vue'
  1204. import meshindex from '../meshindex/index.vue'
  1205. import result from '../result/index.vue'
  1206. import toolindex from '../tool/index.vue'
  1207. import c1 from '@/assets/icon/u9667.png'
  1208. import shx from '@/assets/icon/u9689.png'
  1209. import shx2 from '@/assets/icon/u9690.png'
  1210. import shx3 from '@/assets/icon/u9694.png'
  1211. import shx4 from '@/assets/icon/u3085.png'
  1212. import shx5 from '@/assets/icon/u9840.png'
  1213. import shx6 from '@/assets/icon/u9811.png'
  1214. import shx7 from '@/assets/icon/u9847.png'
  1215. import shx8 from '@/assets/icon/u9843.png'
  1216. import shx9 from '@/assets/icon/u9838.png'
  1217. import shx10 from '@/assets/icon/u9820.png'
  1218. import shx11 from '@/assets/icon/u9846.png'
  1219. import shx12 from '@/assets/icon/u9848.png'
  1220. import shx13 from '@/assets/icon/u9843.png'
  1221. import shx14 from '@/assets/icon/u9921.png'
  1222. import shx15 from '@/assets/icon/u9838.png'
  1223. import shx16 from '@/assets/icon/u9843.png'
  1224. import shx17 from '@/assets/icon/u9840.png'
  1225. import shx19 from '@/assets/icon/u9849.png'
  1226. import shx20 from '@/assets/icon/u9842.png'
  1227. import shx21 from '@/assets/icon/u9850.png'
  1228. import shx22 from '@/assets/icon/u9852.png'
  1229. import shx23 from '@/assets/icon/u9851.png'
  1230. import shx24 from '@/assets/icon/u10014.png'
  1231. import shx25 from '@/assets/icon/u10040.png'
  1232. import shx26 from '@/assets/icon/u100682.png'
  1233. import shx27 from '@/assets/icon/u10082.png'
  1234. import shx28 from '@/assets/icon/u19971.png'
  1235. export default {
  1236. components:{geometry,meshindex,result,toolindex},
  1237. props:['femnum'],
  1238. data() {
  1239. return {
  1240. checked:false,
  1241. c1,shx,shx2,shx3,
  1242. shx4,
  1243. shx5,
  1244. shx6,
  1245. shx7,
  1246. shx8,
  1247. shx9,
  1248. shx10,
  1249. shx11,
  1250. shx12,
  1251. shx13,
  1252. shx14,
  1253. shx15,
  1254. shx16,
  1255. shx17,
  1256. shx19,
  1257. shx20,
  1258. shx21,
  1259. shx22,
  1260. shx23,
  1261. shx24,
  1262. shx25,
  1263. shx26,
  1264. shx27,
  1265. shx28,
  1266. activeName: 'one',
  1267. active:'',
  1268. styX:{
  1269. left:''
  1270. },
  1271. parameterObj: {
  1272. alphad: {key: 'alphad', order: '2', value: '0.0'},
  1273. bet_newmark: {key: 'bet_newmark', order: '2', value: null},
  1274. betad: {key: 'betad', order: '2', value: ''},
  1275. coupled: {key: 'coupled', order: '1', value: '0'},
  1276. dt_str: {key: 'dt_str', order: '2', value: '0.0'},
  1277. dump_mass: {key: 'dump_mass', order: '1', value: 'true'},
  1278. dump_stiff: {key: 'dump_stiff', order: '1', value: 'true'},
  1279. eigenv: {key: 'eigenv', order: '3', value: 'false'},
  1280. eigv_method: {key: 'eigv_method', order: '1', value: null},
  1281. f_static: {key: 'static', order: '3', value: 'false'},
  1282. f_transient: {key: 'transient', order: '1', value: ''},
  1283. freq: {key: 'freq', order: '1', value: ''},
  1284. gam_newmark: {key: 'gam_newmark', order: '2', value: null},
  1285. mesh_inp: {key: 'mesh_inp', order: '3', value: null},
  1286. nlgeom: {key: 'nlgeom', order: '1', value: ''},
  1287. num_eigv: {key: 'num_eigv', order: '1', value: null},
  1288. num_steps: {key: 'num_steps', order: '1', value: ''},
  1289. result_file: {key: 'result_file', order: '3', value: null},
  1290. sid: {key: 'SID', order: '1', value: ''},
  1291. solver: {key: 'solver', order: '1', value: ''},
  1292. sort: {key: 'sort', order: '1', value: ''},
  1293. strain_o: {key: 'strain_o', order: '1', value: 'false'},
  1294. // solution: {
  1295. // f_static: "true",
  1296. // solver: "",
  1297. // eigenv: "false",
  1298. // num_eigv: "",
  1299. // nlgeom: "",
  1300. // eigv_method: "",
  1301. // f_transient: "",
  1302. // alphad: "",
  1303. // betad: "",
  1304. // gam_newmark: "",
  1305. // bet_newmark: "",
  1306. // sid: "",
  1307. // num_steps: "",
  1308. // dt_str: "",
  1309. // freq: "",
  1310. // sort: "",
  1311. // },
  1312. static: {
  1313. dump_stiff: false,
  1314. strain_o: false,
  1315. },
  1316. modes: {
  1317. coupled: "",
  1318. dump_stiff: false,
  1319. dump_mass: false,
  1320. },
  1321. transient: {
  1322. coupled: "",
  1323. dump_stiff: false,
  1324. dump_mass: false,
  1325. strain_o: false,
  1326. },
  1327. results: {
  1328. loadResults: 2,
  1329. scalar: "Displacement-magnitude",
  1330. transiation: true,
  1331. showElement: [],
  1332. },
  1333. },
  1334. formLabelWidth: '60px',
  1335. formLabelWidth2:'73px',
  1336. formLabelWidth4:'37px',
  1337. formLabelWidth5:'100px',
  1338. formLabelWidth6:'120px',
  1339. formLabelWidth7:'170px',
  1340. form: {
  1341. name: '',
  1342. region: '',
  1343. date1: '',
  1344. date2: '',
  1345. delivery: false,
  1346. type: [],
  1347. resource: '',
  1348. desc: '',
  1349. leixing:'gu ding yue shu',
  1350. xishu:'0.1',
  1351. xingwei:"硬接触",
  1352. radio:'0'
  1353. },
  1354. dialog:{
  1355. create_visiable:false,
  1356. attribute_visiable:false,
  1357. materials_visiable:false,
  1358. cross_visiable:false,
  1359. Offset_visiable:false,
  1360. singleforce_visiable:false,
  1361. jdtemp_visiable:false,
  1362. dybar_visiable:false,
  1363. dygravity_visiable:false,
  1364. cstjtemp_visiable:false,
  1365. cstjspeed_visiable:false,
  1366. properties_visiable:false,
  1367. contactpair_visiable:false,
  1368. cae_visiable:false,
  1369. parallel_visiable:false,
  1370. statical_analysis:false,
  1371. model_analysis:false,
  1372. heat_analysis:false,
  1373. transient_analysis:false,
  1374. create_analysis:false,
  1375. },
  1376. jihlist:[
  1377. { icon:c1, titlie:'创建集合'},
  1378. ],
  1379. shxlist:[
  1380. { icon:shx, titlie:'单元属性'},
  1381. { icon:shx2, titlie:'材料属性'},
  1382. { icon:shx3, titlie:'截面属性'},
  1383. ],
  1384. zhlist:[
  1385. { icon:shx4, titlie:'节点类-位移约束力'},
  1386. { icon:shx5, titlie:'节点类-速度'},
  1387. { icon:shx6, titlie:'节点类-集中力'},
  1388. { icon:shx7, titlie:'节点类-加速度'},
  1389. { icon:shx8, titlie:'节点类-温度约束'},
  1390. ],
  1391. zhlist2:[
  1392. { icon:shx9, titlie:'单元类-位移'},
  1393. { icon:shx10, titlie:'单元类-惯性力'},
  1394. { icon:shx11, titlie:'单元类-压力'},
  1395. { icon:shx12, titlie:'单元类-均布力'},
  1396. { icon:shx13, titlie:'单元类-温度'},
  1397. { icon:shx14, titlie:'单元类-重力'},
  1398. ],
  1399. zhlist3:[
  1400. { icon:shx15, titlie:'初始条件-位移'},
  1401. { icon:shx16, titlie:'初始条件-温度'},
  1402. { icon:shx17, titlie:'初始条件-速度'},
  1403. { icon:shx19, titlie:'初始条件-塑性应变'},
  1404. { icon:shx20, titlie:'初始条件-应力'},
  1405. ],
  1406. zhlist4:[
  1407. { icon:shx21, titlie:'接触体-变形体'},
  1408. { icon:shx22, titlie:'接触体-接触属性'},
  1409. { icon:shx23, titlie:'接触体-接触对'},
  1410. ],
  1411. fexkz:[
  1412. { icon:shx2, titlie:'分析类型'},
  1413. { icon:shx10, titlie:'并行类型'},
  1414. ],
  1415. fexkz2:[
  1416. { icon:shx24, titlie:'静力分析'},
  1417. ],
  1418. fexkz3:[
  1419. { icon:shx25, titlie:'模态分析'},
  1420. ],
  1421. fexkz4:[
  1422. { icon:shx26, titlie:'传热分析'},
  1423. ],
  1424. fexkz5:[
  1425. { icon:shx27, titlie:'瞬态响应分析'},
  1426. ],
  1427. fexkz6:[
  1428. { icon:shx28, titlie:'创建分析'},
  1429. ],
  1430. jhlist:[
  1431. {value:'0',name:'节点集合'},
  1432. {value:'1',name:'单元集合'},
  1433. {value:'2',name:'表面集合'},
  1434. ],
  1435. jhval:'0',
  1436. jhlist2:[
  1437. {value:'0',name:'集合1'},
  1438. {value:'1',name:'集合2'},
  1439. ],
  1440. jhval2:'0',
  1441. jhlist3:[
  1442. {value:'0',name:'显示分析单元'},
  1443. {value:'1',name:'隐式分新单元'},
  1444. {value:'2',name:'传热单元'},
  1445. ],
  1446. jhval3:'0',
  1447. jhlist4:[
  1448. {value:'0',name:'一阶'},
  1449. {value:'1',name:'二阶'},
  1450. ],
  1451. jhval4:'0',
  1452. femlist:[
  1453. {value:'0',name:'实体截面'},
  1454. {value:'1',name:'板壳截面'},
  1455. {value:'2',name:'梁截面'},
  1456. ],
  1457. femval:'0',
  1458. femlist2:[
  1459. {value:'0',name:'选择已定义的材料'},
  1460. ],
  1461. femval2:'0',
  1462. femlist3:[
  1463. {value:'0',name:'选择单元几何名称'},
  1464. ],
  1465. femval3:'0',
  1466. femlist4:[
  1467. {value:'0',name:'(选择已定义的节点集合)'},
  1468. ],
  1469. femval4:'0',
  1470. femlist5:[
  1471. {value:'0',name:'(拾取节点,显示节点编号)'},
  1472. {value:'1',name:'(选择已定义的节点集合)'},
  1473. ],
  1474. femval5:'0',
  1475. femlist11:[
  1476. {value:'0',name:'(选择接触属性名称)'},
  1477. ],
  1478. femval11:'0',
  1479. femlist12:[
  1480. {value:'0',name:'(面-面)'},
  1481. {value:'1',name:'(节点-面)'},
  1482. ],
  1483. femval12:'0',
  1484. bxlist:[
  1485. {value:'0',name:'静力分析'},
  1486. {value:'1',name:'模态分析'},
  1487. {value:'2',name:'传热分析'},
  1488. {value:'3',name:'瞬态响应分析'},
  1489. ],
  1490. bxval:'0',
  1491. bxlist1:[
  1492. {value:'0',name:'串行'},
  1493. {value:'1',name:'MPI并行'},
  1494. ],
  1495. bxval1:'0',
  1496. jlialist1:[
  1497. {value:'0',name:'MUMPS直接求解法'},
  1498. {value:'1',name:'PCG迭代求解法'},
  1499. {value:'2',name:'I DI直接求解法'},
  1500. ],
  1501. jliaval1:'0',
  1502. jlialist2:[
  1503. {value:'0',name:'Inverse iteration'},
  1504. {value:'1',name:'Lanczos'},
  1505. ],
  1506. jliaval2:'0',
  1507. jlialist3:[
  1508. {value:'0',name:'Newmark'},
  1509. {value:'1',name:'HHT'},
  1510. {value:'2',name:'Direct'},
  1511. ],
  1512. jliaval3:'0',
  1513. jlialist4:[
  1514. {value:'0',name:'1'},
  1515. {value:'1',name:'2'},
  1516. ],
  1517. jliaval4:'0',
  1518. cjalist:[
  1519. {value:'0',name:'静力分析'},
  1520. {value:'1',name:'模态分析'},
  1521. {value:'2',name:'解响分析'},
  1522. {value:'3',name:'响应分析'},
  1523. {value:'4',name:'随机振动分析'},
  1524. {value:'5',name:'瞬态响应分析'},
  1525. {value:'6',name:'热传导分析'},
  1526. {value:'7',name:'热-固耦合分析'},
  1527. ],
  1528. cjaval:'0',
  1529. cjalist2:[
  1530. {value:'0',name:'默认'},
  1531. {value:'1',name:'自动'},
  1532. {value:'2',name:'直接'},
  1533. ],
  1534. cjaval2:'0'
  1535. }
  1536. },
  1537. mounted(){
  1538. console.log(this.femnum)
  1539. },
  1540. methods:{
  1541. //数据加载参数配置obj
  1542. femchange(obj,solverConfigid){
  1543. this.parameterObj = JSON.parse(obj);//JSON.parse(obj);
  1544. sessionStorage.setItem("res", obj);
  1545. this.solverConfigid=solverConfigid;
  1546. },
  1547. //更新参数配置
  1548. femparam(){
  1549. const params = {
  1550. transCode: 'C00004',
  1551. solverConfigid: this.solverConfigid,
  1552. parameterObj: JSON.stringify(this.parameterObj),
  1553. }
  1554. request(params)
  1555. .then((res) => {
  1556. Message({
  1557. type: "success",
  1558. message: "参数上传,成功",
  1559. });
  1560. })
  1561. .catch((err) => {
  1562. })
  1563. },
  1564. //
  1565. changest(){
  1566. },
  1567. handleClick(tab, event) {
  1568. this.activecleer();
  1569. },
  1570. activecleer(){
  1571. this.active=11;
  1572. },
  1573. //模块选择
  1574. clickgeometry(e,index,key){
  1575. var e=e||window.Event
  1576. this.styX.left=e.clientX+'px';
  1577. this.active=key;
  1578. console.log(key)
  1579. switch(key){
  1580. case 'two-0':
  1581. this.dialog.create_visiable=true;
  1582. break;
  1583. case 'three-0':
  1584. this.dialog.attribute_visiable =true;
  1585. break;
  1586. case 'three-1':
  1587. this.dialog.materials_visiable=true;
  1588. break;
  1589. case 'three-2':
  1590. this.dialog.cross_visiable =true;
  1591. break;
  1592. case 'four-0':
  1593. this.dialog.Offset_visiable =true;
  1594. break;
  1595. case 'four-2':
  1596. this.dialog.singleforce_visiable =true;
  1597. break;
  1598. case 'four-4':
  1599. this.dialog.jdtemp_visiable=true;
  1600. break;
  1601. case 'four1-2':
  1602. this.dialog.dybar_visiable=true;
  1603. break;
  1604. case 'four1-5':
  1605. this.dialog.dygravity_visiable=true;
  1606. break;
  1607. case 'four2-1':
  1608. this.dialog.cstjtemp_visiable=true;
  1609. break;
  1610. case 'four2-2':
  1611. this.dialog.cstjspeed_visiable=true;
  1612. break;
  1613. case 'four3-1':
  1614. this.dialog.properties_visiable=true;
  1615. break;
  1616. case 'four3-2':
  1617. this.dialog.contactpair_visiable=true;
  1618. break;
  1619. case 'five-0':
  1620. this.dialog.cae_visiable=true;
  1621. break;
  1622. case 'five-1':
  1623. this.dialog.parallel_visiable=true;
  1624. break;
  1625. case 'five2-0':
  1626. this.dialog.statical_analysis=true;
  1627. break;
  1628. case 'five3-0':
  1629. this.dialog.model_analysis=true;
  1630. break;
  1631. case 'five4-0':
  1632. this.dialog.heat_analysis=true;
  1633. break;
  1634. case 'five5-0':
  1635. this.dialog.transient_analysis=true;
  1636. break;
  1637. case 'five11-0':
  1638. this.dialog.create_analysis=true;
  1639. break;
  1640. }
  1641. },
  1642. }
  1643. }
  1644. </script>
  1645. <style>
  1646. .leading .el-input__inner{
  1647. height: 30px;
  1648. line-height: 30px;
  1649. }
  1650. </style>
  1651. <style lang="scss" scoped>
  1652. @import '@/styles/variables.scss';
  1653. @import '@/styles/mixin.scss';
  1654. .btnaniu{
  1655. text-align: right;
  1656. }
  1657. .cj{
  1658. height: 20px;
  1659. line-height: 0px;
  1660. font-size: 12px;
  1661. padding: 10px 13px;
  1662. }
  1663. </style>