VII Error Messages#
Starting with Release 2024.11, the error-message output method changed.
Error messages are written as follows.
- invalid_argument
Invalid argument. Indicates an issue with input setting parameters.
- logic_error
Error that can be detected before the program runs. Indicates a data consistency issue.
Example: a sliding edge is not configured.
- runtime_error
Error that can be detected only while the program runs.
Example: a memory allocation error or a zero right-hand-side term.
Error messages use the following format.
“ERROR: “ + message, “check key” or “check below” or “key is wrong.” or “No %s key found.”
How to Address Error Messages#
In many cases, error messages result from missing or inconsistent input data.
The following two causes are likely.
- Insufficient input data
Possible causes include incorrect input values or missing parameter settings.
Input data are redirected to the check file. When an error occurs, this file identifies the error location; review it.
- Invalid input mesh data
Possible causes include inconsistent or invalid mesh data, such as duplicate nodes inside the mesh, mismatched nodes, or overlapping meshes.
Use the boundary_surface file to check boundary conditions when an error occurs.
Most errors are written as invalid_argument or logic_error.
In rare cases, an analysis proceeds to ICCG iterations even though the input data is incomplete, but then fails to converge or diverges. Identifying the cause can be difficult; in practice, incomplete input mesh data is often responsible. First check mesh-related input data, such as boundary_surface and post_geom.
Note
The program may also terminate unexpectedly without an error message, for example with a core dump. This often indicates a program defect. If this occurs, please contact support.
invalid_argument#
Means invalid argument. This error message is written when input setting parameters are invalid.
License-related Error Messages#
License-related error messages for pyemsol are written as follows.
- “This EMSolution license does not allow ‘Parallel’ calculations.nParallel version is necessary.”
Written when the EMSolution license does not permit parallel calculations.
- “wrong input - parallel_type”
Written when the EMSolution license does not permit parallel calculations.
- “This EMSolution license does not allow ‘Parallel’ calculation more than %d parallels.”
Written when the configured number of parallel calculations exceeds the number permitted by the licensed contract.
- “This EMSolution license does not allow temperature dependent analysis calculations. Temperature dependent analysis module is necessary”;
Written when the EMSolution license does not permit temperature-dependent analysis
TEMP_DEPEND(2).
- “CYCLE_AC is needed >0. value for TRANSIENT & DIELECTRIC_CONDUCTIVITY calculation”
Written when the EMSolution license permits neither a Darwin-model transient analysis with
AC(2)as the initial condition nor aCYCLE_AC(7)value forTRANSIENT(2).
- “Total number of nodes =” + node_count + “ Number of nodes exceeds limit value =” + code_protection.max_nodes
Written when the number of nodes in a mesh data file exceeds the number permitted by the EMSolution license.
- “Total number of elements =” + element_count + “ Number of elements exceeds limit value =” + code_protection.max_elements
Written when the number of elements in a mesh data file exceeds the number permitted by the EMSolution license.
- “EMSolution Lite allows to run GEOMETRY = 1 or 2 only.”
Written when the GEOMETRY value is not permitted by an EMSolution Lite license. With an EMSolution Lite license, GEOMETRY must be set to 1 or 2.
- “EMSolution Lite protection key allows to run EMSolution Lite feature.”
With an EMSolution Lite license, use only EMSolution Lite features.
- “This EMSolution license expired on the date: “ + yyyy_mm_dd
Written when the EMSolution license has expired.
- “This EMSolution license does not allow STATIC calculations.STATIC module is necessary.”
Written when the EMSolution license does not permit calculations using
STATIC(2).
- “This EMSolution license does not allow AC calculations.AC module is necessary.”
Written when the EMSolution license does not permit calculations using
AC(2).
- “This EMSolution license does not allow TRANSIENT calculations.TRANSIENT module is necessary.”
Written when the EMSolution license does not permit calculations using
TRANSIENT(2).
- “This EMSolution license does not allow MOTION calculations.MOTION module is necessary.”
Written when the EMSolution license does not permit calculations using
MOTION(2).
- “This EMSolution license does not allow DEFORM calculations.DEFORM module is necessary.”
Written when the EMSolution license does not permit calculations using
DEFORM_MOTION(19.3).
- “This EMSolution license does not allow STEADY_CURRENT calculations.STEADY_CURRENT module is necessary.”
Written when the EMSolution license does not permit calculations using
STEADY_CURRENT(2).
- “This EMSolution license does not allow TEMPERATURE_DEPEND calculations.TEMPERATURE_DEPEND module is necessary.”
Written when the EMSolution license does not permit calculations using
TEMP_DEPEND(2).
- “This EMSolution license does not allow NETWORK calculations. NETWORK module is necessary.”
Written when the EMSolution license does not permit calculations using
NETWORK(17.9).
- “This EMSolution license does not allow dynamic motion calculations. DYNAMIC module is necessary.”
Written when the EMSolution license does not permit calculations using
運動方程式入力(18.6).
- “This EMSolution license does not allow ‘PSIM Coupling’ calculations. PSIM_Coupling module is necessary.”
Written when the EMSolution license does not permit calculations using
PSIM,MATLAB/Simulink 連成解析(18.4).
- “This EMSolution license does not allow ‘Simulink Coupling’ calculations.nPSIM_Coupling module is necessary.”
Written when the EMSolution license does not permit calculations using
PSIM,MATLAB/Simulink 連成解析(18.4).
- “This EMSolution license does not allow ‘anisotropic2D Coupling’ calculations. nANISOTROPIC2D module is necessary.”
Written when the EMSolution license does not permit calculations using
ANISOTROPY2D(16.1).
- “This EMSolution license does not allow JilesAtherton calculations.JilesAtherton module is necessary.”
Written when the EMSolution license does not permit calculations using
J_A_Model(16.1).
- “This EMSolution license does not allow Hysteresis calculations.Hysteresis module is necessary.”
Written when the EMSolution license does not permit calculations using
HYSTERESIS(16.1).
- “This EMSolution license does not allow PM_demagnetization calculations.nPM_demagnetization module is necessary.”
Written when the EMSolution license does not permit calculations using
MAGNET(17.7)= 4: demagnetization analysis.
- “This EMSolution license does not allow ‘CADAS_IO’ calculations.nCADAS_IO module is necessary.”
Written when the EMSolution license does not permit calculations using
INPUT_MESH_FILE(10.1)= 6:CADAS.
- “This EMSolution license does not allow ‘Parallel’ calculations.nParallel module is necessary.”
Written when the EMSolution license does not permit calculations using
PARALLEL_NO(4).
Error messages for input parameters#
- “input is insufficient.”
Written when input.json does not contain sufficient data.
- “Error in card No.” + CARD_NO + “ in file “ + inputfilename + “ Job stops.”
Written when the input data is invalid.
- “Please add release Number larger than 2024.05 at initial of input file.”
Written when the input-data release number
0_Release_Numberis invalid.
- “EMSolution does not allow ‘STATIC=1 and TRANSIENT=1’ calculations.nSet correctly ‘STATIC=1 and TRANSIENT=0’ or ‘STATIC=0 and TRANSIENT=1’.n”
Written when both
STATIC(2)andTRANSIENT(2)are set to 1.
- “ Too few STEP_INTERVAL to convert FFT!”
Written when the number of steps
NO_STEPS_N(8)is insufficient for an FFT.
- “cyclic data and motion data are compatible.”
Written when
CYCLIC(8)data andMOTION(19)are incompatible.
- “MOTION data is invalid. Motion must be one directional.”
Written when
MOTION(19)data specifies motion in more than one direction; only one-dimensional motion is permitted.
- “MOTION ID “ + no + “ is not found.”
Written when an ID in
MOTION(19)data cannot be found.
- “Potential correction (SOURCE_CORRECTION = 0) of Polynomial TP-EEC needs SLIDE_MOTION=ON!”
Written when
SOURCE_CORRECTION(8)is set to 0.
- “need to set FUNDAMENTAL_FREQUENCY > 0 for dq-TP-EEC!”
Written when
FUNDAMENTAL_FREQUENCY(8)is 0 or is not set.
- “MagneticProperty type “ + type + “ is not allowed”
Written when an option for a
MagneticProperty(16.1)type, such asANISOTROPY(16.1), is invalid.
- “mat_property “ + id + “ is not found.”
Written when an ID in
MAT_ID(16.1)data cannot be found.
- “mat_property “ + id + “ is not found to v_element “ v_element_id
Written when a property ID defined in the mesh data file cannot be found in the input
MAT_ID(16.1)data.
- “mat_property “ + id + “ is overlapped in input file!”
Written when IDs in
MAT_ID(16.1)data are duplicated.
- “smat_property “ + id + “ is overlapped in input file!”
Written when IDs in
SMAT_ID(16.2)data are duplicated.
- “Field source is not found for Field_source ID “ + id
Written when an ID in
17_Field_Source(17)data cannot be found.
- “Field source data series_no “ + no + “ is not found.”
Written when
SERIES_ID(17.1)in17_Field_Source(17)data cannot be found.
- “Power supply “ + id + “ is connected to sources in rotor and stator regions.”
Written when
SERIES_IDS(17.8)inPOWER_SUPPLIES(17.8)data cannot be found.
- “Network element ID=” + id + “ cannot be found.”
Written when
ID(17.9.1)inNETWORK(17.9)data cannot be found.
- “ Need to NON_LINEAR=1 for MAGNET INPUT_TYPE=4!”
Written when
MAGNET(17.7)input type is set to 4 andNON_LINEAR(2)is not set to 1.
- “ Need to NON_LINEAR=1 and TEMP_DEPEND=1 for MAGNET INPUT_TYPE=5!”
Written when
MAGNET(17.7)input type is set to 5 andNON_LINEAR(2)= 1 orTEMP_DEPEND(2)= 1 is not set.
- “no_data of MAGNET does not equal to no_input_elements in initial_magnetization.dat file”
Written when the number of
MAGNET(17.7)INPUT_TYPE(17.7)= 1 magnetization-per-element entries does not match the number of entries in initial_magnetization.dat.
- “B_H_curve No. “ + no + “ is not found.”
Written when an ID in
BH_CURVE_ID(20)data cannot be found.
- “B_H_curve2D No. “ + no + “ is not found.”
Written when an ID in
BH_2D_ID(20.3)data cannot be found.
- “No initial_magnetization.dat file. job is stopped.”
Written when initial_magnetization.dat cannot be found.
- “Temperature data for element No. “ + no + “ is not found”
Written when
TEMPERATURE(20.2)data cannot be found in the mesh data file.
- “Non support input type of temperature.dat “
Written when temperature.dat data is invalid.
- “Number of elements in temperature.dat is not equal to necessary number “ + no
Written when the number of elements in temperature.dat does not match the number of target elements in the mesh data file.
- “Temparature_Dependent_BH_curve ID “ + id + “ is not found”
Written when an ID in
TEMP_DEPEND_BH_CURVE_ID(16.1)data cannot be found.
- “Temperature_Dependent_sigma_curve ID “ + id + “ is not found”
Written when an ID in
21_TempDepend_Sigma_Curve(21)data cannot be found.
- “Magnet_BH_curve ID “ + id + “ is not found.”
Written when an ID in
MAGNET_BH_CURVE_ID(20.4)data cannot be found.
- “Time Evolution ID “ + id + “ is not found.”
Written when an ID in
18_Time_Function(18)data cannot be found.
logic_error#
These errors can be detected before the program runs. They occur when the input data is inconsistent.
- “error in calculate_element_matrices”
Written when element-matrix calculation fails.
- “file “ + filename + “ cannot be opened.”
Written when a file cannot be opened, for example when input.json cannot be found.
- “mat_id is not defined in element No. “ + id
Written when a property ID defined in the mesh data file is invalid, for example -1.
- “Node No.” + node_no + “ is input in double”
Written when node IDs composing an element defined in the mesh data file are duplicated.
- “Node “ + node_id + “ is not found for element No.” + elem_id
Written when a node ID composing an element defined in the mesh data file cannot be found.
- “v_element No. “ + no + “ is not included in the volumeElementList”
Written when a volume element connected to a gap element cannot be found while using
GAP_ELEMENT(16.2).
- “Node “ + id + “ is not found for element No. “ + id + “ in translate_2D_to_3D”
Written when a node cannot be found while
2D_to_3D_expansionconverts two-dimensional mesh data to three-dimensional mesh data.
- “Element No.” + id + “, type” + type + “ is not allowable.”
Written when a mesh element type is invalid while
2D_to_3D_expansionconverts two-dimensional mesh data to three-dimensional mesh data.
- “Element No.” + id + “, type” + type + “ is not allowable. The element contacting to the axis in one point.”
Written when, while
2D_to_3D_expansionstacks a two-dimensional mesh in the rotational direction, the resulting three-dimensional mesh has only one node on the Z axis.
- “Surface Element for flux_loop No.” + no + “ is not found.”
Written when a surface element of a flux loop defined by
MAG_FLUX(11)cannot be found.
- “PHICOIL: SMAT is not found!”
Written when a surface-element property for a coil defined by
PHICOIL(17.4)cannot be found.
- “DCCURR: SMAT is not found!”
Written when a surface-element property defined by
DCCURR(17.5)cannot be found.
- “EPOTSUF: SMAT is not found!”
Written when a surface-element property defined by
EPOTSUF(17.10)cannot be found.
- “SDEFCOIL: SMATs are not found!”
Written when a surface-element property for a coil defined by
SDEFCOIL(17.3)cannot be found.
- “Error in SDEFCOIL( “ + id + “-th series, “ + part_id + “-th part, “ + error_surface + “-th face) Possibly, the face is inverted.”
Written when a coil surface element defined by
SDEFCOIL(17.3)has the reverse orientation.
- “GCE: Edge of element is ZERO”
Written when an edge of a hexahedron defined by
GCE(17.1.3)has zero length.
- “Meshed_COIL: Element in COIL mesh is not linear hexahedral.”
Written when a coil mesh defined by Meshed_COIL
MESH(17.1.7)is not composed of linear hexahedral elements.
- “No set Field_sources in CIRCUIT or NETWORK, id=” + id
Written when a current or magnetic-field source
17_Field_Source(17)defined byCIRCUIT(17.8)orNETWORK(17.9)cannot be found.
- “NETWORK ID “ + id + “ is overlapped in input file!”
Written when element IDs defined by
NETWORK(17.9)are duplicated.
- “The network element ( ID=” + ID + “ ) does not close a loop.”
Written when an electric circuit defined by
NETWORK(17.9)does not form a closed loop under graph theory.
- “Failed to parse expression: “ + expression_str
Written when an equation entered through
MATH_EQ(18.5),MATH_EQ(18.6), orMATH_EQ(18.6.3)is invalid.
- “Parser error: Evaluation error for function ‘”) + udf + “’ :n Undefined result in point: “
Written when evaluation of an equation defined in Appendix 1: Formula Input fails.
- “Parser errorWrong function variables in the definition“) + equation + “ One or several from:”
Written when a variable in an equation defined in Appendix 1: Formula Input is invalid.
Other error messages are also written when evaluation of an equation defined in Appendix 1: Formula Input fails.
- “elements in properties are not polynominal.”
Written when, while using the simplified multiphase AC TP-EEC method with
TP_EEC_OPTION(8), properties defined byMAT_IDS_IN_PHASE(8)do not satisfy the multiphase AC periodic boundary condition.
- “potentials in elements are not polynomial.[0]: “ + count0 “ != [” + j + “] :” + countj
Written when, while using the simplified multiphase AC TP-EEC method with
TP_EEC_OPTION(8), the numbers of elements in properties that should satisfy the multiphase AC periodic boundary condition defined byMAT_IDS_IN_PHASE(8)do not match.
- “initial_solution cannot be read from file old_solutions “ + step_no + “, “ + read_step_no
Written during a restart analysis when the step number specified by
INITIAL_STEP(7)cannot be found in old_solutions.
- “Edge number “ + no + “ in file old_solutions is greater than no_edges “ + no_edges
Written during a restart analysis when old_solutions contains more edges than the mesh data file.
- “Node number “ + no + “ in file potentials is greater than no_nodes “ + no_nodes
Written during a restart analysis when old_solutions contains more nodes than the mesh data file.
- “Node data in old_solutions is conflict for Node No.” + no
Written during a restart analysis when node data in old_solutions does not match.
- “Power supply data in old_solutions is conflict for Power supply No.” + no
Written during a restart analysis when
POWER_SUPPLIES(17.8)data in old_solutions does not match.
- “Network element data in old_solutions is conflict for Network element No.” + no
Written during a restart analysis when
NETWORK(17.9)element data in old_solutions does not match.
- “Capacitor voltage data in old_solutions is conflict for Elem No.” + no
Written during a restart analysis when capacitor-voltage data
C(17.9)in old_solutions does not match.
- “Edge data in old_solutions is conflict for Edge No.” + no
Written during a restart analysis when edge data in old_solutions does not match.
- “Edge number “ + no + “ in file potentials is greater than no_edges “ + no
Written during a restart analysis when potentials contains more edges than the mesh data file.
- “Node number “ + no + “ in file potentials is greater than no_nodes “ + no
Written during a restart analysis when potentials contains more nodes than the mesh data file.
- “Power_supply id_no “ + id_no + “ is not found”
Written during a restart analysis when an ID of
POWER_SUPPLIES(17.8)cannot be found in potentials.
- “File load_vector is incorrect.”
Written when data in load_vector (the right-hand-side term of the matrix equation) is invalid.
- “Sliding edges do not detect by LINE_INPUT.”
Written during sliding-motion analysis when an edge forming a sliding edge cannot be found on a line segment defined by
LINE_INPUT(14)inSLIDE_MOTION(19.2).
- “Sliding edges do not detect by MAT_ID=” + id
Written during sliding-motion analysis when an edge forming a sliding edge cannot be found on an edge element defined by
SLIDE_MAT_ID(14)inSLIDE_MOTION(19.2).
- “Sliding edges do not connect.”
Written during sliding-motion analysis when sliding edges extracted by
SLIDE_MOTION(19.2)are not connected.
- “Sliding edges do not detect.”
Written during sliding-motion analysis when an edge forming a sliding edge cannot be found on a line segment defined by
LINE_INPUT(14)inSLIDE_MOTION(19.2).
- “Something is wrong in definition of sliding face.”
Written during
SLIDE_MOTION(19.2)analysis when interpolation surfaces for the displacement cannot be extracted.
- “ERROR in get_cyclic_edge start_node=” + start_node + “, end_node = “ + end_node
Written during
SLIDE_MOTION(19.2)analysis when an edge on a periodic boundary surface cannot be found.
- “Node data for ID=” + no + “ is not found in deform_meshn”
Written when the input mesh file deform_mesh for deforming motion
DEFORM_MOTION(19.3)does not contain a node ID matching one in the input mesh file pre_geom.
- “Node ID=” + id + “ is not connected to FE mesh in control volume element”
Written when nodes of a control-volume element defined by
CONTROL_VOLUME_ID(19.3)for deforming motionDEFORM_MOTION(19.3)are invalid.
- “time step “ + no + “ cannot be read from file_solutions”
Written during post-processing when a step number specified by
OUTPUT_STEP_SET(9)cannot be found in solutions.
- “[CodeMeter] Checking out “ + cm_product + “ license error = “ + cmerror
Written when the CodeMeter license check fails.
runtime_error#
These errors can be detected only while the program is running. They include memory-allocation errors and a zero right-hand-side term.
- “Residual has NaN”
Written when the residual becomes NaN (Not a Number) during convergence calculation, for example when the right-hand-side term of a matrix equation is zero.
- “calloc error file:” + finename + “, size:” + size * length
Written when memory allocation fails. The source-file name and allocation size are reported for debugging. This can occur when the computer has insufficient memory for a large model.
- “error in create_linked_list_with_buffer: size conflict. size = “ + size + “, buffer->size
Written when list creation fails. For debugging, it is written when the allocated memory size does not match the list size.
- “Error in blocked_fseek”
Written when reading a binary intermediate file, such as solutions, fails.
- “Location error in matrix i=” + i + “, j = “ + j
Written when the position of an entry in the coefficient matrix is invalid, for example because the finite-element mesh contains duplicate nodes.
- “Location error in source matrix i=” + i + “, j = “ + j
Written when the position of an entry in the right-hand-side matrix is invalid, for example because the finite-element mesh contains duplicate nodes.
- “Zero division Incomplete Cholesky Decomposition at “ + ierror
Written when Cholesky decomposition of a matrix fails, for example because a diagonal entry is zero and causes division by zero.
- “ RHS of equation=0, No source term is given. Job stops!”
Written when an entry in the right-hand-side matrix is zero and no source term is provided.
- “Symmetric matrix dimension( “ + dimension + “ ) is less than 0.”
Written when the dimension of a symmetric matrix is zero or less. This is rarely displayed.
- “Symmetric matrix is singular at k=” + key
Written when a symmetric matrix is singular. This is rarely displayed.
- “Error in File “) + pre_geom + “ near data. CARD “ + string
Written when reading a mesh data file fails, for example because the mesh data file format is invalid.
- “ initial_solution cannot be read from file old_motion”
Written when old_motion cannot be found during restart analysis using
運動方程式入力(18.6).
- “time step “ + no + “ cannot be read from file_solutions”
Written during post-processing when a step number specified by
OUTPUT_STEP_SET(9)cannot be found in solutions.
- “symmetry matrices in symmetry cannot be allocated”
Written when allocation of memory for the
B_INTEG(11)symmetric matrix fails.
- “Terminated by user request”
Written when the user terminates a calculation run from
pyemsol.