Structure ========= Stages ------ The macro command CALC_EUROPLEXUS is divided into three main steps: 1. reading input data and translating; 2. launch of calculation EPX; 3. retrieving and formatting the results. When adding a feature, the two steps involved are 1) and 3). Data reading and translation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This step corresponds exactly to using CALC_EUROPLEXUS with LANCEMENT =' NON '. It produces the command file EPX and the mesh MED (possibly including an initial state). **Dedicated modules** The body of the macro (calc_europlexus_ops.py) successively treats the various inputs (model, elementary characteristics, behavior and materials, loads,...). In most cases, the actual processing is done in dedicated Python modules. These modules can be found in the Calc_epx/ directory. .. csv-table:: "calc_epx_geom.py ", "Model processing" "calc_epx_mate.py ", "Material processing and behavior" "calc_epx_cara.py ", "Elementary characteristics processing" "calc_epx_char.py ", "Load processing" "calc_epx_poutre.py ", "Special treatment of beam and discrete orientations" **Writing the command file** Command file EPX is a text file that uses a four-character keyword. It has a fairly regular structure (although there are many exceptions). The calc_epx_struc.py module was created to standardize the EPX data layout as much as possible by looking for the smallest possible regular units to go up to the directives (main keywords). Various objects have been created to facilitate the development of the macro and to produce a readable and structured command file. Retrieving and formatting results ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The results from EPX are contained in a MED file. Reading this file and formatting the results in an evol_noli object is done by a second macro-command: LIRE_EUROPLEXUS called by CALC_EUROPLEXUS. However, it should be noted that this macro-command can be called independently of CALC_EUROPLEXUS. Translation catalog ----------------------- The translation catalog (calc_epx_cata.py) is the core module of CALC_EUROPLEXUS and LIRE_EUROPLEXUS from the perspective of a developer who wants to add functionality. It is in this file that all the authorized functionalities are detailed as well as their translation EPX (as far as possible). So adding any functionality starts with editing this file.