-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathapdl-process.el
2318 lines (2129 loc) · 90.3 KB
/
apdl-process.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
;;; apdl-process.el --- Managing runs and processes for APDL-Mode -*- lexical-binding: t -*-
;; Time-stamp: <2021-10-14>
;; Copyright (C) 2006 - 2021 H. Dieter Wilhelm GPL V3
;; Author: H. Dieter Wilhelm <[email protected]>
;; Maintainer: H. Dieter Wilhelm
;; Version: 20.7.0
;; Package-Requires: ((emacs "25.1"))
;; Keywords: languages, convenience
;; URL: https://github.com/dieter-wilhelm/apdl-mode
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; This code is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published
;; by the Free Software Foundation; either version 3, or (at your
;; option) any later version.
;;
;; This lisp script is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
;;
;; Permission is granted to distribute copies of this lisp script
;; provided the copyright notice and this permission are preserved in
;; all copies.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, you can either send email to this
;; program's maintainer or write to: The Free Software Foundation,
;; Inc.; 675 Massachusetts Avenue; Cambridge, MA 02139, USA.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Commentary:
;; Managing runs and processes for APDL-Mode
;; Ansys MAPDL error codes:
;; Code Explanation
;; 0 Normal Exit
;; 1 Stack Error
;; 2 Stack Error
;; 3 Stack Error
;; 4 Stack Error
;; 5 Command Line Argument Error
;; 6 Accounting File Error
;; 7 Auth File Verification Error
;; 8 Error in Mechanical APDL or End-of-run
;; 11 User Routine Error
;; 12 Macro STOP Command
;; 14 XOX Error
;; 15 Fatal Error
;; 16 Possible Full Disk
;; 17 Possible Corrupted or Missing File
;; 18 Possible Corrupted DB File
;; 21 Authorized Code Section Entered
;; 25 Unable to Open X11 Server
;; 30 Quit Signal
;; 31 Failure to Get Signal
;; >32 System-dependent Error
;;; Code:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; external defvars
(defvar apdl-username)
(defvar apdl-help-index)
(defvar apdl-license-file)
(defvar apdl-license-categories)
(defvar apdl-ansys-program)
(defvar apdl-ansys-launcher)
(defvar apdl-ansys-wb)
(defvar apdl-ansys-help-path)
(defvar apdl-mode-install-directory)
(defvar apdl-current-ansys-version)
;; (defvar apdl-ansys-install-directory)
(defvar apdl-ansysli-servers)
;;(defvar apdl-is-unix-system-flag)
(defvar apdl-lmutil-program)
(defvar apdl-ansys-help-program)
(defvar apdl-initialised-flag)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; declare-functions
(declare-function apdl-initialise "apdl-initialise")
(declare-function apdl-next-code-line "apdl-mode")
(declare-function apdl-code-line-p "apdl-mode")
(declare-function apdl-skip-block-forward "apdl-mode")
(declare-function apdl-in-empty-line-p "apdl-mode")
;; (declare-function buffer-name "") ; in-built
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; requires
(require 'comint)
(require 'url)
;;(require 'apdl-mode) recursive loading error!
(require 'apdl-initialise)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; --- customisation ---
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defgroup APDL-process nil
"Customisation 'process' subgroup for the APDL-Mode."
:group 'APDL)
(defcustom apdl-license-occur-regexp
'(
"granta" ; material stuff
"electronics" ; electronics desktop
"spaceclaim" ; spaceclaim
;; "agppi" ; agppi -- Design Modeler
"cfd" ; Computational Fluid Mechanics
"disc" ; disc* -- discovery procucts
"aim_mp" ; aim_mp -- Discovery Aim
; standard
"stba" ; stba -- structural solver
"struct" ; struct -- structural
"mpba" ; mpba -- multiphysics solver
"ane3" ; ane3 -- magnetics
; ane3fl -- multiphysics
"^ansys" ; ansys -- mechanical
"anshpc" ; anshpc -- HighPerformanceComputing
"^preppost" ; preppost -- PrePost
; processing no solve
"mech_" ; mech_1 -- mechanical pro
; mech_2 -- mechanical premium
"[0-9][0-9]:[0-9][0-9]:[0-9][0-9]") ; and time XX:XX:XX of status
; request
"List of regular expression strings of interesting licenses.
This list is concatenated to a regexp for the function
`apdl-occur'."
:type 'list
:group 'APDL-process)
(defcustom apdl-job "file"
"String variable storing the Ansys job name.
It is initialised to 'file' (which is also the Ansys default job
name). See `apdl-abort-file' for a way of stopping a solver run
in a controlled way and `apdl-display-error-file' for viewing
the respective error file."
:type 'string
:group 'APDL-process)
(defcustom apdl-license-categories
'("ansys"
"struct"
"ane3"
"ansysds"
"ane3fl"
"preppost")
"List of available license types to choose for an Ansys run.
This list should contain the license types you can choose from.
Below are often used license types (as e.g. seen with the
function `apdl-license-status') and their corresponding WorkBench
terminology.
\"ansys\" - Mechanical U (without thermal capability)
\"struct\" - Structural U (with thermal capability)
\"ane3\" - Mechanical/Emag (Structural U with electromagnetics)
\"ansysds\" - Mechanical/LS-Dyna (Mechanical U with Ansys LS-Dyna inter-phase)
\"ane3fl\" - Multiphysics
\"preppost\" - PrepPost (no solving capabilities)"
:type 'list
:group 'APDL-process)
;; under a "prepost" license - propably since V19 - you can issue a
;; solve command, and MAPDL is solving while catching a "meba" license
;; :-)
(defcustom apdl-license "preppost" ; changed from "ansys" 2021-09
"The License cagegory with which the MAPDL interpreter will be started.
It is also used for displaying the current license usage in
`apdl-license-status'. See the custom variable
`apdl-license-categories' for often used Ansys license types."
;; :options '("ansys" "struct" "ane3" "ane3fl" "ansysds" "preppost")
:options apdl-license-categories
;; options not available for strings (only hooks, alists, plists E22)
:type 'string
:group 'APDL-process)
(defcustom apdl-batch-license "meba"
"The License type for an MAPDL batch run."
:options '("ansys" "struct" "ane3" "ane3fl" "ansysds" "meba" "mech_1" "mech_2")
;; :options apdl-license-categories
;; options not available for strings (only hooks, alists, plists E22)
:type 'string
:group 'APDL-process)
(defcustom apdl-no-of-processors 3
"No of processors to use for an Ansys MAPDL run.
This value is reccomended to N - 1, with N the total number of
cores in the computer. If smaller then 5 the run does not
require additonal HPC licenses. 2 is the Ansys default for SMP
parallelisation."
:type 'integer
:group 'APDL-process)
(defcustom apdl-blink-delay .3
"Number of seconds to highlight the evaluated region."
:group 'APDL-process
:type 'number)
(defcustom apdl-blink-region-flag t
"Non-nil means highlight the evaluated region."
:group 'APDL-process
:type 'boolean)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; --- variables ---
(defvar apdl-is-unix-system-flag nil
"Non-nil means the computer runs a Unix system.
Any of GNU-Linux, aix, berkeley-unix, hpux, irix, lynxos 3.0.1 or
usg-unix-v.")
(defvar apdl-emacs-window-id nil
"Editing buffer's X11 window id.")
(defvar apdl-classics-window-id nil
"The X11 window id of the Ansys GUI or the command window.")
(defvar apdl-classics-flag nil
"Non-nil means that a Classics GUI could be found.")
;;; --- constants ---
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defconst apdl-license-description
'((1spacdes . "Geometry Interface for Creo Elements/Direct Modeling")
(a_catv6_reader . "ANSYS CATIA V6 Reader")
(a_dynamics_4_scdm . "ANSYS Dynamics for Spaceclaim by Algoryx")
(a_geometry . "ANSYS Geometry Interfaces")
(a_jt_reader . "Geometry Interface for JT")
(a_lmat . "ANSYS Composite Cure Simulation")
(a_spaceclaim_3dpdf . "3D PDF Reader for SpaceClaim")
(a_spaceclaim_catv5 . "ANSYS SpaceClaim CATIA V5 Interface")
(a_spaceclaim_dirmod . "ANSYS SpaceClaim Direct Modeler")
(a_spaceclaim_faceteddata . "Faceted Data Toolkit for SpaceClaim")
(a_spaceclaim_jt . "JT Open Reader for SpaceClaim")
(aa_a . "ANSYS Academic Associate")
(aa_a_cfd . "ANSYS Academic Associate CFD")
(aa_a_hpc . "ANSYS Academic Associate HPC")
(aa_ds . "ANSYS Academic Teaching DesignSpace")
(aa_dy_p . "ANSYS Academic LS-DYNA Parallel")
(aa_fcell . "ANSYS Academic Fuel Cell Tools")
(aa_mcad . "ANSYS Academic MCAD")
(aa_mesh . "ANSYS Academic Meshing Tools")
(aa_r . "ANSYS Academic Research")
(aa_r_cfd . "ANSYS Academic Research CFD")
(aa_r_dy . "ANSYS Academic Research LS-DYNA")
(aa_r_et . "ANSYS Academic Research Electronics Thermal")
(aa_r_hpc . "ANSYS Academic Research HPC")
(aa_r_me . "ANSYS Academic Research Mechanical")
(aa_r_pf . "ANSYS Academic Research POLYFLOW")
(aa_s_aim . "ANSYS AIM Student")
(aa_t_a . "ANSYS Academic Teaching Advanced")
(aa_t_cfd . "ANSYS Academic Teaching CFD")
(aa_t_i . "ANSYS Academic Teaching Introductory")
(aa_t_me . "ANSYS Academic Teaching Mechanical")
(acdi_ad3dfull . "ANSYS AUTODYN-3D")
(acdi_adprepost . "ANSYS AUTODYN PrepPost")
(acdi_aqwadrft . "ANSYS AQWA - AQWADRFT")
(acdi_aqwafer . "ANSYS AQWA - AQWAFER")
(acdi_aqwags . "ANSYS AQWA - AQWAGS")
(acdi_aqwalbrm . "ANSYS AQWA - AQWALBRM")
(acdi_aqwaline . "ANSYS AQWA - AQWALINE")
(acdi_aqwanaut . "ANSYS AQWA - AQWANAUT")
(acdi_aqwawave . "ANSYS AQWA - AQWAWAVE")
(acdi_asas . "ANSYS ASAS - ASAS")
(acdi_asaslink . "ANSYS ASAS - ASASLINK")
(acdi_asasnl . "ANSYS ASAS - ASASNL")
(acdi_asas-vis . "ANSYS ASAS - ASAS-VIS")
(acdi_beamst . "ANSYS ASAS - BEAMST")
(acdi_cd-ags . "ANSYS AQWA - CD-AGS")
(acdi_cd-drift . "ANSYS AQWA - CD-DRIFT")
(acdi_cd-fer . "ANSYS AQWA - CD-FER")
(acdi_cd-libr . "ANSYS AQWA - CD-LIBR")
(acdi_cd-naut . "ANSYS AQWA - CD-NAUT")
(acdi_comped . "ANSYS ASAS - COMPED")
(acdi_explprof . "ANSYS Explicit STR")
(acdi_fatjack . "ANSYS ASAS - FATJACK")
(acdi_hydrodiff . "ANSYS AQWA - HYDRO-DIFFRACT")
(acdi_loco . "ANSYS ASAS - LOCO")
(acdi_mass . "ANSYS ASAS - MASS")
(acdi_maxmin . "ANSYS ASAS - MAXMIN")
(acdi_post . "ANSYS ASAS - POST")
(acdi_postnl . "ANSYS ASAS - POSTNL")
(acdi_prebeam . "ANSYS ASAS - PREBEAM")
(acdi_prenl . "ANSYS ASAS - PRENL")
(acdi_response . "ANSYS ASAS - RESPONSE")
(acdi_splinter . "ANSYS ASAS - SPLINTER")
(acdi_wave . "ANSYS ASAS - WAVE")
(acdi_windspec . "ANSYS ASAS - WINDSPEC")
(acdi_xtract . "ANSYS ASAS - XTRACT")
(acfd_2 . "ANSYS CFD Premium")
(acfd_3 . "ANSYS CFD Enterprise")
(acfd_fcell . "Fuel Cell Module")
(acfd_ffc . "FfC V5")
(acfd_ffc_pre . "FfC V5 Pre")
(acfd_fluent_solver . "ANSYS FLUENT Solver")
(acfd_ib . "Immersed Boundary Module")
(acfd_mhd . "ANSYS CFD MHD")
(acfd_polyflow_blowmolding . "ANSYS POLYFLOW BlowMolding")
(acfd_polyflow_extrusion . "ANSYS POLYFLOW Extrusion")
(acfd_preppost . "ANSYS CFD PrepPost")
(acfd_rif . "CFX-RIF Flamelet Library Generator")
(acfd_v2f . "V2f Module")
(acfd_vista_tf . "ANSYS Vista TF")
(acfd_vki . "ANSYS VKI library")
(acfdsol2 . "ANSYS CFD Premium Solver")
(acfdsol3 . "ANSYS CFD Enterprise Solver")
(acfx_advanced_turbulence . "ANSYS CFX-5 Advanced Turbulence Models")
(acfx_bldmdlr . "ANSYS BladeModeler")
(acfx_combustion . "ANSYS CFX-5 Reacting and Combusting Species")
(acfx_mfr . "ANSYS CFX-5 Multiple Frames of Reference")
(acfx_multiphase . "ANSYS CFX-5 Multi-Phase Flows")
(acfx_post . "ANSYS CFX-Post")
(acfx_pre . "ANSYS CFX-5 Pre")
(acfx_radiation . "ANSYS CFX-5 Radiation Models")
(acfx_turbogrid . "ANSYS CFX-TurboGrid")
(acfx_turbulence_transition . "ANSYS CFX-5 Turbulence Transition")
(acpreppost . "ANSYS Composite PrepPost")
(act_cadfem_gominterface . "TPA GOM Interface CADFEM")
(act_demsol_edemforansys . "TPA EDEM for ANSYS DEM Solutions")
(act_edrmed_ASMEFat . "TPA ASME Fatigue EDR Medeso")
(act_edrmed_ASMELF . "TPA ASME Local Failure EDR Medeso")
(act_edrmed_bolttoolkit . "TPA Bolt Toolkit EDR Medeso")
(act_edrmed_reportgenerator . "TPA Report Generator EDR Medeso")
(act_edrmed_weldfatigue . "TPA Weld Fatigue EDR Medeso")
(act_edrmed_weldstrength . "TPA Weld Strength EDR Medeso")
(act_es_multiplerun . "TPA MultipleRun EnginSoft SPA")
(act_FBay_MBDforANSYSmodeler . "TPA MBD for ANSYS Modeler FunctionBay")
(act_ges_utilizationplot . "TPA Utilization Plot General Engineering Solutions")
(act_greact_ntoplatticeworkflow . "TPA nTopology Lattice Custom Workflow Groupe Reaction")
(act_infini_exportresults . "TPA Export Results Infinite Simulation Systems")
(act_mminc_multimech . "TPA MultiMech MultiMechanics")
(act_oei_simnotebook . "TPA Simulation Notebook Ozen Eng")
(act_PERA_PCBTraceImageImport . "TPA PCBTraceImageFileImport Pera Global")
(act_phimec_exporteverything . "TPA Export Everything PHI-MECA Eng")
(act_prosol_rfi . "TPA RFlex Generator for RecurDyn Pro-Lambda Solutions")
(act_rbf_rbfmorph . "TPA - RBF Morph ACT Extension for Mechanical - RBF Morph")
(act_sorvim_designbooster . "TPA SORVI Design Booster Sorvimo Optimointipalvelut Oy")
(advanced_meshing . "Advanced Meshing")
(afsp_fensapice_cfd . "ANSYS FENSAP-ICE")
(afsp_gui . "ANSYS FENSAP-ICE GUI")
(afsp_optigrid . "ANSYS FENSAP-ICE OptiGrid")
(afsp_viewmerical . "ANSYS FENSAP-ICE Viewmerical")
(agppi . "ANSYS DesignModeler")
(aiacis . "ANSYS ICEM CFD ACIS to Tetin Converter")
(aibfcart . "ANSYS ICEM CFD BF-Cart")
(aice_mesher . "ANSYS IcePak Mesher")
(aice_pak . "ANSYS IcePak")
(aice_solv . "ANSYS IcePak Solver")
(aidxf . "ANSYS ICEM CFD DXF to Tetin Converter")
(aihexa . "ANSYS ICEM CFD Hexa Add-on")
(aiiges . "ANSYS ICEM CFD IGES to Tetin Converter")
(aim_mp1 . "ANSYS AIM Standard")
(aimed . "ANSYS ICEM CFD Mesh Editor")
(aimshcrt . "ANSYS ICEM CFD Cart3D Mesher")
(aioutcfd . "ANSYS ICEM CFD Translators for CFD Codes")
(aioutput . "ANSYS ICEM CFD Output Interfaces")
(aiprism . "ANSYS ICEM CFD Prism Mesher")
(aiquad . "ANSYS ICEM CFD Quad Mesher")
(aitetra . "ANSYS ICEM CFD Tetra Mesher")
(al4allegro . "ALinks Cadence Allegro integration")
(al4ansoft . "Import ANF Neutral Files")
(al4apd . "ALinks Cadence APD integration")
(al4boardstation . "ALinks Mentor Boardstation Integretion")
(al4cadvance . "ALinks for cadvance")
(al4cds . "ALinks for CDS")
(al4encore . "ALinks Synopsis Encore Integration")
(al4expedition . "ALinks Mentor Expedition Integration")
(al4first . "ALinks for First")
(al4gem . "ALinks for GEM Design Technologies")
(al4generic . "Import from 3rd Party exported data")
(al4odb++ . "ALinks ODB++ integration")
(al4powerpcb . "ALinks PowerPCB integration")
(al4virtuoso . "ALinks Virtuoso integration")
(al4zuken . "ALinks Zuken integration")
(algoryx_momentum . "ANSYS Discovery Algoryx Momentum")
(alinks_gui . "ALinks GUI")
(am_module . "ANSYS Additive Manufacturing Module")
(am_prep . "ANSYS Additive Prep")
(am_print . "ANSYS Additive Print")
(amesh . "ANSYS Mesh")
(amesh_extended . "ANSYS Extended Meshing")
(ancfx . "ANSYS Mechanical/CFX-Flo")
(ancode_acc_testing . "ANSYS nCode Accelerated Testing")
(ancode_composite . "ANSYS nCode DesignLife Composites")
(ancode_hpc . "ANSYS nCode Parallelization")
(ancode_standard . "ANSYS nCode Standard")
(ancode_thermo_mech . "ANSYS nCode DesignLife Thermo-Mechanical Module")
(ancode_vibration . "ANSYS nCode Vibration")
(ancode_welds . "ANSYS nCode Welds")
(ane3 . "ANSYS Mechanical/Emag")
(ane3fl . "ANSYS Multiphysics")
(ans_act . "ANSYS Customization Module")
(ans_dp_pack . "ANSYS HPC Parametric Pack")
(anshpc . "ANSYS HPC")
(anshpc_pack . "ANSYS HPC Pack")
(ansoft_distrib_engine . "ANSYS DSO")
(ansrom . "ANSYS ROM Builder")
(ansys . "ANSYS Mechanical")
(aqwa_pre . "AQWA Pre")
(aqwa_solve . "AQWA Solve")
(aspeos_solver . "ANSYS SPEOS Solver")
(caewbpl3 . "ANSYS DesignSpace")
(capricatv5 . "CADNexus/CAPRI CAE Gateway for CATIA V5")
(cfd_base . "CFD Base")
(cfd_polyflow_ui . "Polyflow UI")
(cfd_preppost . "CFD PrepPost")
(cfd_solve_level1 . "CFD Solver - Level 1")
(cfd_solve_level2 . "CFD Solver - Level 2")
(cfd_solve_level3 . "CFD Solver - Level 3")
(deba . "ANSYS DesignSpace Batch")
(designer_hspice . "ANSYS Designer HSPICE")
(dfatigue . "ANSYS Fatigue Module")
(disc_ess . "ANSYS Discovery Essentials")
(disc_sta . "ANSYS Discovery Standard")
(disc_ult . "ANSYS Discovery Ultimate")
(disc_ult_cpuext . "ANSYS Discovery Ultimate CPU Core Extension")
(disco_level1 . "Discovery - Level 1")
(disco_level2 . "Discovery - Level 2")
(disco_level3 . "Discovery - Level 3")
(discovery_geom . "ANSYS Discovery Ultimate Geometry Interface Bundle")
(discovery_geom_catia . "ANSYS Discovery Ultimate Geometry Interface Bundle for CATIA")
(dsdxm . "ANSYS DesignXplorer")
(dspi . "DesignSpace PlugIn")
(dyna . "ANSYS LS-DYNA")
(dynamics . "ANSYS Dynamics")
(dynapp . "ANSYS LS-DYNA PrepPost")
(dynardo_osl . "ANSYS optiSLang")
(dynardo_osp . "ANSYS optiSLang Post")
(dynardo_sig . "dynardo_sig")
(dysmp . "ANSYS LS-DYNA Parallel")
(electronics_desktop . "ANSYS Electronics Desktop")
(electronics2d_gui . "ANSYS Electronics 2D GUI")
(electronics3d_gui . "ANSYS Electronics 3D GUI")
(electronicsckt_gui . "ANSYS Electronics Circuit GUI")
(emag . "ANSYS Emag")
(emit_legacy_gui . "Emit Legacy GUI")
(emit_solve . "Emit Solve")
(ensemble_25_sim . "Planar EM 2.5D solver")
(ensight . "ANSYS EnSight")
(ensight_enterprise . "ANSYS EnSight Enterprise")
(ensight_jt_exporter . "ANSYS EnSight JT Exporter")
(ensight_mr . "ANSYS EnSight MR")
(ensight_vr . "ANSYS EnSight VR")
(envision_pro . "ANSYS EnVision Pro")
(explicit_advanced . "Explicit - Advanced")
(explicit_basic . "Explicit - Basic")
(filter_synthesis . "ANSYS filter_synthesis")
(forte_3 . "ANSYS Chemkin Enterprise Forte")
(granta_mi_pro . "ANSYS Granta MI Pro")
(granta_selector . "Granta CES Selector")
(granta_sim_mat_data . "Granta Simulation Materials Data")
(granta_spl_mat_bundle_1 . "Granta Complete Materials Reference Data Bundle #1")
(granta_spl_mat_bundle_2 . "Granta Complete Materials Reference Data Bundle #2")
(granta_spl_mat_bundle_3 . "Granta Complete Materials Reference Data Bundle #3")
(hfss_solve . "HFSS solver")
(hfss_transient_solve . "HFSS Transient")
(hfsssbr_solve . "HFSS SBR+ Solve")
(keyshot_spaceclaim_hd . "ANSYS Discovery KeyShot HD")
(keyshot_spaceclaim_pro . "ANSYS Discovery KeyShot Pro")
(kinemat . "ANSYS Kinematics")
(linux_catiav5 . "ANSYS Geometry Interface for Catia V5 Linux")
(m2dfs_qs_solve . "Maxwell 2D Quasistatic Solver")
(m2dfs_solve . "Maxwell 2D Solver")
(m3dfs_qs_solve . "Maxwell 3D Quasistatic Solver")
(m3dfs_solve . "Maxwell 3D solver")
(mat_designer . "Material Designer")
(meba . "ANSYS Mechanical Batch")
(mech_1 . "ANSYS Mechanical Pro")
(mech_2 . "ANSYS Mechanical Premium")
(MeshViewer . "Helic products (legacy) - mesh viewer")
(mpba . "ANSYS Multiphysics Batch")
(nexxim_ami . "NEXXIM AMI")
(nexxim_dc . "NEXXIM DC")
(nexxim_eye . "NEXXIM Eye")
(nexxim_hb . "NEXXIM HB")
(nexxim_osc . "NEXXIM OSC")
(nexxim_tran . "NEXXIM Tran")
(nexxim_tvnoise . "NEXXIM TVNOISE")
(optimetrics . "Optimetrics")
(paramesh . "ANSYS MeshMorpher")
(pdmiman . "ANSYS Interface for Team Center Engineering")
(pemag . "PEmag Modeling Tool")
(pexprt . "PExprt Design Tool")
(piautoin . "Geometry Interface for Autodesk Inventor")
(picatv5 . "Geometry Interface for CATIA V5")
(pimedesk . "Geometry Interface for Mechanical Desktop")
(piproe . "Geometry Interface for Pro/ENGINEER")
(pisoledg . "Geometry Interface for SolidEdge")
(pisolwor . "Geometry Interface for SolidWorks")
(piug . "Geometry Interface for NX")
(preppost . "ANSYS Mechanical PrepPost")
(prf . "ANSYS Professional NLT")
(prfnls . "ANSYS Professional NLS")
(RaptorX . "RaptorX - enable GUI")
(rbfmorph . "ANSYS RBF Morph Module")
(rd_ckcompute . "ANSYS RD CHEMKIN HPC")
(rd_ckgraph . "ANSYS RD CHEMKIN GRAPH")
(rd_ckpost . "ANSYS RD CHEMKIN POST")
(rd_ckpreproc . "ANSYS RD CHEMKIN PREPROC")
(rd_ckui . "ANSYS RD CHEMKIN UI")
(rd_energico . "ANSYS RD ENERGICO")
(rd_fortejob . "ANSYS RD FORTE JOB")
(rd_fortemesh . "ANSYS RD FORTE MESH")
(rd_forteui . "ANSYS RD FORTE UI")
(rd_forteviz . "ANSYS RD FORTE VIZ")
(rd_kineticsapi . "ANSYS RD KINETICS")
(rd_mechforte . "ANSYS RD MECH FORTE")
(rd_mechmfc . "ANSYS RD Model Fuel")
(rd_mechsoot . "ANSYS RD Soot")
(rd_mechwb . "ANSYS RD Workbench")
(rd_reactionwbui . "ANSYS RD Workbench UI")
(rdacis . "Geometry Interface for SAT")
(rdpara . "Geometry Interface for Parasolid")
(rmxprt_bcm . "RMxprt Brush Commutator Machine")
(rmxprt_ecm . "RMxprt Electronic Commutator Machine")
(rmxprt_im . "RMxprt Induction Machine")
(rmxprt_sym . "RMxprt Synchronus+E298 Machine")
(RXBackAnnotation . "RaptorX (legacy) - schematic backannotation module")
(savant_legacy_gui . "Savant Legacy GUI")
(sherlock . "ANSYS Sherlock")
(si2d_solve . "Q3D Extractor 2D solver")
(si3d_solve . "Q3D Extractor 3D solver")
(simplorer_advanced . "Simplorer Advanced")
(simplorer_control . "Simplorer Control")
(simplorer_CProgrInterface . "Simplorer C Programming Interface")
(simplorer_desktop . "Simplorer Desktop")
(simplorer_gui . "Simplorer GUI")
(simplorer_LibSMPS . "Simplorer LibSMPS")
(simplorer_model_export . "Simplorer Model Export")
(simplorer_modelica . "Simplorer Modelica")
(simplorer_modelon_base . "Modelon Base Library")
(simplorer_modelon_hl . "Hydraulics Library")
(simplorer_modelon_pl . "Pneumatics Library")
(simplorer_sim . "Simplorer Simulator")
(simplorer_sim_entry . "ANSYS Simplorer Entry")
(simplorer_twin_models . "ANSYS Twin Builder")
(simplorer_vhdlams . "Simplorer VHDLAMS")
(SIwave_gui . "SIwave GUI")
(SIwave_level1 . "SIwave Solver - Level 1 functionality")
(SIwave_level2 . "SIwave Solver - Level 2 functionality")
(SIwave_level3 . "SIwave Solver - Level 3 functionality")
(SIwave_psi_ac_solve . "SIwave PSI Solver")
(stba . "ANSYS Structural Batch")
(stl_prep . "ANSYS Discovery Essentials STL Prep for 3D Printng")
(struct . "ANSYS Structural")
(symphony_dt_sim . "Discrete Time Domain System Engine Solver")
(symphony_fd_sim . "Frequency Domain System Engine Solver")
(TransformerWizard . "VeloceRF (legacy) - transformer synthesis module")
(twin_builder_dynamic_rom . "twin_builder_dynamic_rom")
(twin_builder_rapidprototype . "twin_builder_rapidprototype")
(twin_builder_rapidprototypesim . "twin_builder_rapidprototypesim")
(twin_builder_runtime_export . "twin_builder_runtime_export")
(VeloceAdaptiveCompaction . "Helic products (legacy) - compact model extraction")
(VelocePolygonEngine . "Helic products (legacy) - mesh generation module")
(VeloceRaptor . "Helic products (legacy) - extraction engine")
(VeloceRF . "VeloceRF - enable GUI")
(vmotion . "ANSYS Motion")
(vmotion_car . "ANSYS Motion Car Toolkit")
(vmotion_catiai . "ANSYS Motion CATIA Import")
(vmotion_drtrain . "ANSYS Motion Drivetrain Toolkit")
(vmotion_links . "ANSYS Motion Links Toolkit")
(vmotion_mesh . "ANSYS Motion Physics Meshing Toolkit")
(vmotion_para . "ANSYS Motion Parasolid Translator")
(vmotion_step . "ANSYS Motion STEP Translator"))
"Association list: Feature name . feature description.
Status: Ansys v201 from about the beginning of 2020.")
(defconst apdl-begin-keywords
'("\\*[dD][oO]" "\\*[dD][oO][wW][hH]?[iI]?[lL]?[eE]?"
"\\*[iI][fF].*[tT][hH][eE][nN]" "\\*[cC][rR][eE][aA][tT][eE]")
"Regexps describing APDL block begin keywords.")
(defconst apdl-block-begin-regexp
(concat "\\("
(mapconcat 'identity apdl-begin-keywords "\\|")
"\\)\\>")
"Regexp containing the APDL begin keywords.")
(defconst apdl-process-name "MAPDL"
"Variable containing the name of an MAPDL interactive process.
Variable is used internally only.")
(defconst apdl-classics-process "Classics"
"Variable containing the name of an MAPDL GUI process.
Variable is used internally only.")
(defconst apdl-batch-process "MAPDL-Batch"
"Variable containing the name of an MAPDL batch process.
Variable is used internally only.")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; --- functions ---
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun apdl-is-unix-system-p ()
"Return t when we are on a Unix system.
gnu/linux, aix, berkeley-unix, hpux, irix, lynxos 3.0.1,
usg-unix-v. Ansys supports only GNU-Linux 64 and Windows 64 for
the entire Ansys platform with some support of legacy Unices (AIX
IBM, HP-UX HP, SGI, Solaris SUN) for standalone apps will be
provided so I won't restrict some aspects of APDL-Mode to
GNU-Linux."
(not
(or (string= system-type "gnu") ; gnu with the hurd kernel
(string= system-type "darwin") ; mac
(string= system-type "ms-dos")
(string= system-type "windows-nt")
(string= system-type "cygwin"))))
(defun apdl-toggle-classics ()
"Toogle sending output to Ansys Classics.
Try to locate an Ansys Classics GUI or the command dialog box and
switch output to it."
(interactive)
(if apdl-classics-flag
(progn
(setq apdl-classics-flag nil)
(message "Disconnected from Classics."))
(if (apdl-classics-p)
(progn (setq apdl-classics-flag t)
(message "Connected to Classics."))
(error "No Ansys Classics window found"))))
(defun apdl-classics-p ()
"Check whether Ansys Classics is running.
Return nil if we can't find an MAPDL GUI."
(let ((aID (replace-regexp-in-string
"\n" ""
(shell-command-to-string "~/a-m/X11/xGetClassicsWindow")))
(eID (replace-regexp-in-string
"\n" ""
(shell-command-to-string "~/a-m/X11/xGetFocusWindow"))))
(if (string= "" aID)
;; (error "No Ansys MAPDL window found")
nil
(setq apdl-emacs-window-id eID)
(setq apdl-classics-window-id aID)
;; (setq x-select-enable-clipboard t) ; for kill-new necessary
(setq select-enable-clipboard t) ; for kill-new necessary
aID)))
;;;###autoload
(defun apdl-start-classics () ; C-c C-x
"Start the Ansys MAPDL Classics graphical user interface.
The output of the solver is captured in an Emacs buffer called
*Classics* under GNU-Linux. Under Windows it is not possible to
capture the output here, only the exit code. Please
see `apdl-start-batch-run' for the documentation of these codes.
MAPDL command line options:
-aas : implies -b
-b : implies -i and -o
-lch : undocumented, command line built from the Ansys Launcher
-t : undocumented, maximum solver time -t 10:30:00
V2020R2:
-aas : Enables server mode. When enabling server mode, a custom
name for the keyfile can be specified using the -iorFile
option. For more information, see Mechanical APDL as a Server
User's Guide.
-acc device : Enables the use of GPU hardware to accelerate the
analysis. See GPU Accelerator Capability in the Parallel
Processing Guide for more information.
-amfg : Enables the additive manufacturing capability (requires
an additive manufacturing license). For general information
about this feature, see AM Process Simulation in Ansys
Workbench.
-ansexe : In the Ansys Workbench environment, activates a custom
Mechanical APDL executable.
-b list or nolist : Activates the Mechanical APDL program in
batch mode. The options -b list or -b by itself cause the input
listing to be included in the output. The -b nolist option
causes the input listing not to be included. For more
information about running Mechanical APDL in batch mode, see
Batch Mode.
-custom : Calls a custom Mechanical APDL executable. See Running
Your Custom Executable in the Programmer's Reference for more
information.
-d device : Specifies the type of graphics device. This option
applies only to interactive mode. For Linux systems, graphics
device choices are X11, X11C, or 3D. For Windows systems,
graphics device options are WIN32 or WIN32C, or 3D.
-db value : Defines the portion of workspace (memory) to be used
as the initial allocation for the database. The default is 1024
MB. Specify a negative number (-value) to force a fixed size
throughout the run; useful on small memory systems.
-dir : Defines the initial working directory. Using the -dir
option overrides the ANSYS212_WORKING_DIRECTORY environment
variable.
-dis : Enables Distributed Ansys. See the Parallel Processing
Guide for more information.
-dvt : Enables Ansys DesignXplorer advanced task (add-on).
-g : Launches the Mechanical APDL program with the Graphical User
Interface (GUI) on. If you select this option, an X11 graphics
device is assumed for Linux unless the -d option specifies a
different device. This option is not used on Windows
systems. To activate the GUI after Mechanical APDL has started,
enter two commands in the input window: /SHOW to define the
graphics device, and /MENU,ON to activate the GUI. The -g
option is valid only for interactive mode. Note: If you start
Mechanical APDL via the -g option, the program ignores any
/SHOW command in the start.ans file and displays a splash
screen briefly before opening the GUI windows.
-i inputname : Specifies the name of the file to read input into
Mechanical APDL for batch processing. On Linux, the preferred
method to indicate an input file is <.
-iorFile keyfile_name : Specifies the name of the server keyfile
when enabling server mode. If this option is not supplied, the
default name of the keyfile is aas_MapdlID.txt. For more
information, see Mechanical APDL as a Server Keyfile in the
Mechanical APDL as a Server User's Guide.
-j Jobname : Specifies the initial jobname, a name assigned to
all files generated by the program for a specific model. If you
omit the -j option, the jobname is assumed to be file.
-l language : Specifies a language file to use other than US
English. This option is valid only if you have a translated
message file in an appropriately named subdirectory in
/ansys_inc/v212/ansys/docu (or Program Files\\ANSYS
Inc\\V212\\ANSYS\\docu on Windows systems).
-m workspace : Specifies the total size of the workspace (memory)
in megabytes used for the initial allocation. If you omit the
-m option, the default is 2 GB (2048 MB). Specify a negative
number (-value) to force a fixed size throughout the run.
-machines : Specifies the machines on which to run a Distributed
Ansys analysis. See Starting Distributed Ansys in the Parallel
Processing Guide for more information.
-mpi : Specifies the type of MPI to use. See the Parallel
Processing Guide for more information.
-mpifile : Specifies an existing MPI file (appfile) to be used in
a Distributed Ansys run. See Using MPI Files in the Parallel
Processing Guide for more information.
-na : Specifies the number of GPU accelerator devices per machine
or compute node when running with the GPU accelerator
feature. See GPU Accelerator Capability in the Parallel
Processing Guide for more information.
-name value : Defines Mechanical APDL parameters at program
start-up. The parameter name must be at least two characters
long. For details about parameters, see the Ansys Parametric
Design Language Guide.
-np : Specifies the number of processors to use when running
Distributed Ansys or Shared-memory Ansys. See the Parallel
Processing Guide for more information.
-o outputname : Specifies the name of the file to store the
output from a batch execution of Mechanical APDL. On Linux, the
preferred method to indicate an output file is >.
-p productname : Defines which Ansys product will run during the
session. For more detailed information about the -p option, see
Selecting an Ansys Product via the Command Line.
-ppf license feature name : Specifies which HPC license to use
during a parallel processing run. See HPC Licensing in the
Parallel Processing Guide for more information.
-rcopy : On a Linux cluster, specifies the full path to the
program used to perform remote copy of files. The default value
is /usr/bin/scp.
-s read or noread : Specifies whether the program reads the
start.ans file at start-up. If you omit the -s option,
Mechanical APDL reads the start.ans file in interactive mode
and not in batch mode.
-schost host name : Specifies the host machine on which the
coupling service is running (to which the co-simulation
participant/solver must connect) in a System Coupling analysis.
-scid value : Specifies the licensing ID of the System Coupling
analysis.
-sclic port@host : Specifies the licensing port@host to use for
the System Coupling analysis.
-scname name of the solver : Specifies the unique name used by
the co-simulation participant to identify itself to the
coupling service in a System Coupling analysis. For Linux
systems, you need to quote the name to have the name recognized
if it contains a space: ansys212 -scname \"Solution 1\"
-scport port number : Specifies the port on the host machine upon
which the coupling service is listening for connections from
co-simulation participants in a System Coupling analysis.
-smp : Enables shared-memory parallelism. See the Parallel
Processing Guide for more information.
-usersh : Directs the MPI software (used by Distributed Ansys) to
use the remote shell (rsh) protocol instead of the default
secure shell (ssh) protocol. See Configuring Distributed Ansys
in the Parallel Processing Guide for more information.
-v : Returns the Mechanical APDL release number, update number,
copyright date, customer number, and license manager version
number.
"
(interactive)
;; initialise system dependent stuff in case this command was
;; invoked before APDL-Mode.
(unless apdl-initialised-flag
(apdl-initialise))
(let ((bname (concat "*"apdl-classics-process"*")))
;; check against .lock file
(when (file-readable-p (concat default-directory apdl-job ".lock"))
(if (yes-or-no-p
(concat "Warning: There is a \""apdl-job".lock" "\" in "
default-directory ". This might indicate that there \
is already a solver running. Do you wish to kill the lock file? "))
(delete-file (concat apdl-job ".lock"))
(error "Starting the MAPDL GUI (Ansys Classics) canceled")))
(if (y-or-n-p
(concat
"Start MAPDL GUI: "
apdl-ansys-program
", license: " apdl-license
;; "Start run? (license type: " (if (boundp
;; 'apdl-license) apdl-license)
(if (> apdl-no-of-processors 4)
(concat ", No of procs: "
(number-to-string apdl-no-of-processors))
"")
", job: " (if (boundp 'apdl-job) apdl-job)
" in " default-directory ", lic server: "
apdl-license-file " "))
(message "Starting MAPDL in GUI mode (Ansys Classics) ...")
(error "Starting MAPDL GUI (Ansys Classics) canceled"))
;; -d : device
;; -g : graphics mode
;; -p : license
;; -np: no of PROCs, Ansys default 2, >4 HPC licenses req.
;; -j : jobname
;; v195 new params?: -t -lch
;; -g -p ansys -np 2 -j "file" -d 3D
(start-process apdl-classics-process
(if apdl-is-unix-system-flag
bname
nil) ;nil process not associated with a
;buffer
apdl-ansys-program
"-g"
"-p" apdl-license
"-lch"
"-np" (number-to-string apdl-no-of-processors)
"-j" apdl-job
"-s read"
"-l en-us"
"-t"
"-d 3D" ; 3d device, win32
)
;; (with-temp-message "bla bla for 10 s"
;; (run-with-timer 10 nil '(lambda())))
(if apdl-is-unix-system-flag
(display-buffer bname 'other-window)
)))
(defun apdl-start-batch-run ()
"Start an Ansys MAPDL batch run locally on the current script.
The output of the process is captured in an Emacs buffer called
*APDL-Batch*. You should finish your script with a \"finish\"
command, otherwise you'll get an error code 8.
Here are the Ansys MAPDL error codes:
Code Explanation
-------------------
0 Normal Exit
1 Stack Error
2 Stack Error
3 Stack Error
4 Stack Error
5 Command Line Argument Error
6 Accounting File Error
7 Auth File Verification Error
8 Error in Mechanical APDL or End-of-run
11 User Routine Error
12 Macro STOP Command
14 XOX Error
15 Fatal Error
16 Possible Full Disk
17 Possible Corrupted or Missing File
18 Possible Corrupted DB File
21 Authorized Code Section Entered
25 Unable to Open X11 Server
30 Quit Signal
31 Failure to Get Signal
>32 System-dependent Error
"
(interactive)
;; initialise system dependent stuff in case this command was
;; invoked before APDL-Mode.
(unless apdl-initialised-flag
(apdl-initialise))
(let ((bname (concat "*"apdl-batch-process"*")))
;; check against .lock file
(when (buffer-modified-p (current-buffer))
(if (y-or-n-p
(concat "Warning: Buffer \""
(file-name-nondirectory buffer-file-name)
"\" is modified, do you want to save it?"))
(save-buffer)
(message "APDL file not saved")))
(when (file-readable-p (concat default-directory apdl-job ".lock"))
(if (yes-or-no-p
(concat "Warning: There is a \"" apdl-job ".lock" "\" in "
default-directory ". This might indicate that there \
is already a solver running. Do you wish to kill the lock file? "))
(delete-file (concat apdl-job ".lock"))
(error "MAPDL batch run canceled")))
(if (y-or-n-p
(concat
"Start batch run: "
apdl-ansys-program
", input file: " (buffer-file-name)
", license: " apdl-batch-license
;; "Start run? (license type: " (if (boundp
;; 'apdl-license) apdl-license)
(if (> apdl-no-of-processors 4)
(concat ", No of procs: "
(number-to-string apdl-no-of-processors))
"")
", job: " (if (boundp 'apdl-job) apdl-job)
" in " default-directory ", lic server: "
apdl-license-file " "))
(message "Starting MAPDL batch run ...")
(error "MAPDL batch run canceled"))
;; -d : device
;; -g : graphics mode
;; -p : license
;; -np: no of PROCs
;; -j : job
;; v195 new params?: -t -lch
;; -g -p ansys -np 2 -j "file" -d 3D
(start-process apdl-batch-process bname
;; (if apdl-is-unix-system-flag
;; bname
;; nil) ;nil process not associated with a
;; ;buffer
apdl-ansys-program
;;"-g"
"-p" apdl-batch-license
"-lch" default-directory
"-smp" ;smp: shared memory run
"-np" (number-to-string apdl-no-of-processors)
"-j" apdl-job ;job name
"-s" "noread" ;don't read startup script
"-l en-us" ;language
"-b" ;batch
"-i" (buffer-file-name)
"-o" (concat apdl-job ".out")
;; "-t"
;;"-d 3D" ; 3d device, win32
)
;;(if apdl-is-unix-system-flag
(display-buffer bname 'other-window)
;; )
))
;;;###autoload
(defun apdl-start-launcher ()
"Start the Ansys Launcher."
(interactive)
;; initialise system dependent stuff in case this command was
;; invoked before APDL-Mode.
(unless apdl-initialised-flag