diff --git a/PySpice/Spice/NgSpice/Shared.py b/PySpice/Spice/NgSpice/Shared.py index 34ad86f4..9423b2d3 100644 --- a/PySpice/Spice/NgSpice/Shared.py +++ b/PySpice/Spice/NgSpice/Shared.py @@ -627,6 +627,10 @@ def _send_char(message_c, ngspice_id, user_data): func = self._logger.warning elif 'Note:' in content: func = self._logger.info + elif 'doAnalyses' in content: + func = self._logger.info + elif 'run simulation(s) aborted' in content: + func = self._logger.info else: self._error_in_stderr = True func = self._logger.error diff --git a/PySpice/Spice/Parser/HighLevelParser.py b/PySpice/Spice/Parser/HighLevelParser.py index 9b34e323..a15daea9 100644 --- a/PySpice/Spice/Parser/HighLevelParser.py +++ b/PySpice/Spice/Parser/HighLevelParser.py @@ -84,7 +84,9 @@ from ..Netlist import Node from ..StringTools import remove_multi_space from . import Ast -from . import ElementData +from PySpice.Spice.Parser.ElementData import elements as ElementData_elements +from PySpice.Spice.Parser.ElementData import _init as ElementData_init + from .Ast import AstNode from .Parser import SpiceParser from .SpiceSyntax import ElementLetters @@ -313,7 +315,9 @@ def __init__(self, line: SpiceLine, ast: AstNode) -> None: # Read nodes self._nodes = [] number_of_pins = 0 - data = ElementData.elements[self._letter] + if(len(ElementData_elements)==0): + ElementData_init() + data = ElementData_elements[self._letter] if not data.has_variable_number_of_pins: number_of_pins = data.number_of_pins else: # Q or X