Código fonte para inewave.nwlistcf.nwlistcf

from typing import List

from inewave._utils.escrita import Escrita
from inewave._utils.arquivo import Arquivo
from inewave._utils.dadosarquivo import DadosArquivo
from inewave.nwlistcf.modelos.nwlistcf import LeituraNwlistcf
from inewave.nwlistcf.modelos.nwlistcf import RegistroNwlistcf


[documentos]class Nwlistcf(Arquivo): """ Armazena os dados dos cortes construídos pelo NEWAVE existentes no arquivo `nwlistcf.rel` do NWLISTCF. Esta classe armazena os cortes da FCF de cada uma das variáveis, para cada registro e REE dentro do registro. Cada registro possui um modelo próprio, armazenando os coeficientes dos hiperplanos em uma array específica. """ def __init__(self, dados: DadosArquivo): super().__init__(dados) @classmethod def le_arquivo(cls, diretorio: str, nome_arquivo="nwlistcf.rel") -> 'Nwlistcf': leitor = LeituraNwlistcf(diretorio) r = leitor.le_arquivo(nome_arquivo) return cls(r) def escreve_arquivo(self, diretorio: str, nome_arquivo="nwlistcf.rel"): escritor = Escrita(diretorio) escritor.escreve_arquivo(self._dados, nome_arquivo) @property def registros(self) -> List[RegistroNwlistcf]: registros: List[RegistroNwlistcf] = [] for b in self._blocos: registros += b.dados return registros