Structure of .mast file#
The .mast file is a plain ASCII data file that records operations performed using the Zmaster GUI.
The data is stored in a structured format, making it easy to read and modify. While it can be edited
manually for simpler tasks, using the Zmaster GUI is the preferred method for handling more complex
operations.
The Zmaster interface can be used to create and mesh geometry. The .mast file used for this
purpose follows this structure:
****master***geometry**pointpoint0_label*positionx0 y0 z0**pointpoint1_label*positionx1 y1 z1 ...**pointpointN_label*positionxN yN zN**lineline0_label*p1pointi*p2pointj*cutsn_cuts ...**arcarc0_label*p1pointi*p2pointj*cutsn_cuts*centerpointk*dataradius theta1 theta2 % theta1, theta2 in radians ...**curvequadcurve_label*cutsn_cuts*pointsp1 p2 ... pN ...**domaindomain1domain_label*namedomain_name*elementtype*methodnum*b1edge0 % an edge could be a line, arc or a curve*b2edge1*b3edge2*b4edge3**domainbsetbset_label*namebset_name*orderorder % 1: linear, 2: quadratic, 3: single point*bline1 ... lineN % lines [*p] point1 ... pointN % points [*sp] point1 ... pointN % single points**domaindomain_sprdomain_label*namedomain_name*elementelement_type % spring elements e.g l3d2, l2d2, ...*bline_i line_j ... line_k ... % other types of domains***mesher<MESHERS> % see user manual, meshers section.****return
For simulation and optimization (SimOpt), the structure of the .mast
is given as:
****master***sim_opt**templatetemplate1.tmpl [... templateN.tmpl]**variables*nameparam_name % material parameters: young, poisson, ...*valvalue*minmin_val*maxmax_val*optimized% to be optimized*attached_totemplateI.tmpl [... templateJ.tmpl] ... % other variables**var_history*namehist_label*var_namesvar1 [... varN]*var_valuesval1 [... valN]*var_optimizedbool1 [... boolN] % bool=true or false ... % other variables' history**simulation*namesim_label*plotplot_label keep_history var1 var2 % keep_history is the number of previous plots to keep for comparison ... % other variables' history**experiment*type<type>*nameexp_label*fromfile*X_Ci % i-th column, it can also be a function, e.g. ln(_C1)*Y_Cj % j-th column, it can also be a function, e.g. ln(_C2) [*selection<FUNCTION>] % a function to select x or y range e.g. (_C1>0)*(_C2>1.) [*plotplot_label [plot_options] file1(_Ci) file2(_Cj)] ...**optimization*nameopt_label*method<optimization_algorithm> % e.g. levenberg_marquardt*comparisoncomparison_label [method] simulation experiment var1 var2 weight [*comparison... ] ...**parametric_var*namep_v_label*valuevar_value1 param_value1 ... [*valuevar_valueN param_vlueN]*expression<FUNCTION> % e.g. a*x^2+b*x+c*coefficientcoeffminmin_valuemaxmax_value [*coefficient]*precisionnumber_of_points ...**parametric_func*namep_f_label*expression<FUNCTION>*minmin_value*maxmax_value*precisionnumber_of_points****return