Ir para o conteúdo

Saída e reinício

Os resultados da análise existem inicialmente na memória, pelo que têm de ser escritos em ficheiros adequados para pós-processamento, visualização, recuperação e reinício. Como o formato dos ficheiros, os itens de saída e a frequência de saída variam consoante a finalidade, o FrontISTR disponibiliza vários sistemas de saída para diferentes utilizações.

A saída do FrontISTR é constituída por três sistemas: ficheiros de resultados que guardam os valores da análise (!WRITE,RESULT), ficheiros de visualização utilizados para visualização (!WRITE,VISUAL) e ficheiros de reinício que guardam o estado da análise (!RESTART). As grandezas físicas incluídas nos ficheiros de resultados e nos ficheiros de visualização são selecionadas, respetivamente, com !OUTPUT_RES e !OUTPUT_VIS.

Visão geral das funções

É mais fácil organizar as configurações de saída considerando separadamente os três eixos seguintes.

Eixo Entrada principal Função
Destino de saída !WRITE,RESULT!WRITE,VISUAL!RESTART Determina em que tipo de ficheiro, consoante a finalidade, os resultados são guardados.
Variáveis de saída !OUTPUT_RES!OUTPUT_VIS Determina as grandezas físicas incluídas nos ficheiros de resultados ou nos ficheiros de visualização.
Frequência de saída FREQUENCY Determina de quantos em quantos passos é efetuada uma escrita no ficheiro.

!WRITE,RESULT ativa os ficheiros de resultados e !OUTPUT_RES especifica as variáveis de saída. !WRITE,VISUAL ativa os ficheiros de visualização e !OUTPUT_VIS especifica as variáveis transmitidas à visualização. Em ambos os casos, o intervalo de saída pode ser controlado por FREQUENCY. !WRITE é um único cartão, e RESULT / VISUAL / FEMAP podem coexistir como parâmetros que selecionam os destinos de saída.

Nas linhas de dados de !OUTPUT_RES e !OUTPUT_VIS, são enumerados os nomes das variáveis de saída e ON / OFF. Ao especificar GROUP, é possível limitar o alvo da saída por grupo. Consulte a referência de palavras-chave para a sintaxe de entrada concreta e as linhas de dados disponíveis.

!RESTART guarda o próprio estado da análise, separadamente dos ficheiros de resultados e de visualização. Os ficheiros de reinício são utilizados para retomar uma análise a partir do mesmo estado após uma interrupção.

Como escolher a saída

A saída deve ser escolhida, em primeiro lugar, em função do objetivo a verificar. Utilize um ficheiro de resultados quando os valores numéricos forem usados em pós-processamento ou noutra análise e um ficheiro de visualização quando pretender verificar formas ou distribuições com uma ferramenta de visualização. Se for necessário retomar a análise a meio, ative um ficheiro de reinício separadamente da saída normal de resultados.

Objetivo Saída a selecionar Especificação principal
Guardar valores da análise para pós-processamento, comparação ou outra análise Ficheiro de resultados !WRITE,RESULT e !OUTPUT_RES
Verificar distribuições e formas deformadas no ParaView ou em ferramentas semelhantes Ficheiro de visualização !WRITE,VISUAL!OUTPUT_VIS!VISUAL
Retomar uma análise longa a partir de um ponto intermédio Ficheiro de reinício !RESTART
Reduzir o volume de saída Emitir apenas as variáveis necessárias ON / OFF e FREQUENCY em !OUTPUT_RES / !OUTPUT_VIS

Em análises de grande escala, guardar todos os passos com as configurações de saída predefinidas pode fazer crescer muito os ficheiros de resultados e de visualização. Defina como ON apenas as grandezas físicas necessárias e como OFF as que não são necessárias para a verificação. Se não for necessário acompanhar o histórico temporal com grande detalhe, aumente FREQUENCY para tornar o intervalo de saída mais espaçado.

Uma ordem útil para decidir as variáveis de saída é «grandeza física a verificar», «destino de saída» e «frequência». Por exemplo, para verificar uma distribuição de tensões no ParaView, ative os ficheiros de visualização e selecione NSTRESS ou NMISES com !OUTPUT_VIS. Para pós-processar numericamente a força de contacto, ative os ficheiros de resultados e selecione CONTACT_NFORCE ou uma variável semelhante com !OUTPUT_RES.

Grandezas físicas disponíveis

As variáveis de saída dividem-se em resultados de análise estrutural, análise dinâmica, análise térmica, análise de contacto, resultados específicos de elementos e metainformação de identificação. A tabela abaixo resume os principais nomes de variáveis, os tipos e os tipos de análise em que são utilizados. Para uma lista completa dos nomes das variáveis e a sintaxe das linhas de dados, consulte !OUTPUT_RES e !OUTPUT_VIS.

Categoria Nome da variável Tipo Tipo de análise principal Descrição
Grandezas básicas da análise estrutural DISPROTREACTION Vetor Análise estática, análise dinâmica Deslocamento, rotação e força de reação nodal. ROT é válido para elementos com graus de liberdade de rotação.
Tensão NSTRESSESTRESSISTRESS Tensor simétrico Análise estrutural Tensão média nodal, tensão do elemento e tensão no ponto de integração.
Tensão de von Mises / tensão principal NMISESEMISESPRINC_NSTRESSPRINC_ESTRESSPRINCV_NSTRESSPRINCV_ESTRESS Escalar, vetor Análise estrutural Tensão de von Mises, valores das tensões principais e direções das tensões principais.
Deformação NSTRAINESTRAINISTRAIN Tensor simétrico Análise estrutural Deformação nodal, deformação do elemento e deformação no ponto de integração.
Deformação plástica / térmica PL_ISTRAINPL_ESTRAINTH_NSTRAINTH_ESTRAINTH_ISTRAIN Escalar, tensor simétrico Análise estrutural não linear, análise de tensões térmicas Deformação plástica equivalente e deformação térmica.
Deformação principal PRINC_NSTRAINPRINC_ESTRAINPRINCV_NSTRAINPRINCV_ESTRAIN Escalar, vetor Análise estrutural Valores das deformações principais e direções das deformações principais.
Análise dinâmica VELACC Vetor Análise dinâmica Velocidade nodal e aceleração nodal.
Análise térmica TEMP Escalar Análise de condução de calor Temperatura nodal. Nos ficheiros de resultados e de visualização da análise térmica, é emitida como campo de temperatura.
Contacto CONTACT_NFORCECONTACT_FRICTIONCONTACT_RELVELCONTACT_STATECONTACT_NTRACTIONCONTACT_FTRACTION Vetor, escalar Análise de contacto Força normal de contacto, força de atrito, velocidade relativa de deslizamento, estado de contacto e força de contacto por unidade de área.
Elemento de viga BEAM_NQM Valor de 12 componentes Análise estrutural que inclui elementos de viga Esforços internos da secção dos elementos de viga.
Identificação / estado NODE_IDELEM_IDSECTION_IDMATERIAL_IDELEMACTYIELD_RATIO Escalar Análise estrutural, visualização Informação de identificação de nós, elementos, secções e materiais; estado de ativação dos elementos; e razão de cedência. ELEMACT emite 1 para elementos ativos e 0 para elementos inativos (desativados).
Informação auxiliar de casca SHELL_LAYERSHELL_SURFACE Escalar Análise estrutural que inclui elementos de casca Informação auxiliar para identificar a saída por camada de casca e as superfícies da casca.

Por predefinição, DISP, ROT, NSTRESS e NMISES estão em ON. No entanto, a existência de valores efetivamente significativos depende do tipo de análise, do tipo de elemento, do modelo de material e das configurações de contacto. Por exemplo, VEL e ACC são utilizados em análise dinâmica, e CONTACT_* é utilizado quando são geradas informações de contacto numa análise de contacto.

Saída por camada de casca

Os elementos de casca têm vários pontos de integração ou camadas ao longo da espessura, pelo que os valores de tensão e deformação podem variar consoante a camada ou a superfície, mesmo dentro do mesmo elemento. Apenas com valores médios nodais ou valores de elemento normais, é difícil distinguir a que camada ou superfície pertence um determinado valor.

Quando SHELL_LAYER é definido como ON, os resultados dos lados + e - de cada camada de uma casca laminada são emitidos separadamente. As componentes de tensão e deformação emitidas incluem identificadores do número da camada e do lado da superfície, permitindo avaliar distribuições de tensão ao longo da espessura e danos por camada.

SHELL_SURFACE é informação auxiliar para identificar superfícies da casca, como a superfície superior e a inferior. Ao visualizar resultados por camada de casca, ative SHELL_LAYER e as variáveis de tensão/deformação necessárias e, na ferramenta de visualização, selecione a componente de resultado correspondente à camada ou superfície pretendida.

Como a saída por camada de casca aumenta o número de componentes de saída, o tamanho dos ficheiros aumenta em modelos com muitas camadas. É aconselhável limitar a saída às variáveis de tensão e deformação necessárias.

Destinos de saída

Os ficheiros de resultados e os ficheiros de visualização diferem na finalidade e no formato de armazenamento. Numa mesma análise, podem ser emitidos ambos ou apenas um deles.

Ficheiros de resultados

Os ficheiros de resultados são ativados com !WRITE,RESULT. Os resultados da análise são guardados como dados de resultados do FrontISTR / HEC-MW e utilizados para pós-processamento numérico ou como entrada de outra análise. As variáveis de saída são selecionadas com !OUTPUT_RES.

!WRITE,RESULT também é implementado como o parâmetro RESULT do cartão !WRITE e é uma opção de destino de saída ao mesmo nível da visualização e da saída FEMAP.

Os ficheiros de resultados podem guardar deslocamento, tensão, deformação, forças de reação, informação de contacto e outras grandezas na análise estrutural, e campos de temperatura na análise térmica. O intervalo de saída por passo é especificado com FREQUENCY. Consulte o guia de execução para os nomes concretos dos ficheiros, a respetiva localização e a forma de os verificar após a execução.

Os ficheiros de resultados (extensão .res) são dados de texto com a estrutura seguinte. Primeiro aparecem a versão do formato e um comentário, seguidos das variáveis globais e, por fim, das variáveis de saída de cada nó e elemento.

*fstrresult 2.0
*comment
<linha de comentário>
*global
<número de variáveis globais>
<graus de liberdade das variáveis globais>
<nomes das variáveis globais>
<valores das variáveis globais>
...
*data
<número de nós> <número de elementos>
<número de itens de dados nodais> <número de itens de dados de elementos>
<graus de liberdade dos dados nodais> ...
<nomes dos dados nodais>
...
<valores dos dados nodais>
...
<graus de liberdade dos dados de elementos> ...
<nomes dos dados de elementos>
...
<valores dos dados de elementos>
...

Ficheiros de log

Os ficheiros de log (extensão .log) são ficheiros de resumo que são sempre emitidos após a análise. Para além das grandezas físicas de cada nó e elemento, são emitidos os valores máximos/mínimos das componentes de deslocamento, deformação e tensão. Na análise modal, são emitidos os valores próprios e os valores dos vetores próprios. O parâmetro LOG de !WRITE controla o conteúdo da saída. Consulte o guia de execução para os nomes e a localização dos ficheiros.

Ficheiros de visualização

Os ficheiros de visualização são ativados com !WRITE,VISUAL. A malha e os dados de resultados são convertidos para um formato destinado a ferramentas de visualização e emitidos. As variáveis de saída são selecionadas com !OUTPUT_VIS, e o formato e as condições de visualização são especificados com !VISUAL.

!WRITE,VISUAL não é uma palavra-chave independente; é implementado como o parâmetro VISUAL do cartão !WRITE, alternando o destino de saída ao mesmo nível de !WRITE,RESULT / !WRITE,FEMAP (fstr_ctrl_get_WRITE em fistr1/src/common/fstr_ctrl_common.f90).

Para ativar a visualização, é necessário especificar, no mínimo, a superfície de visualização e o formato de saída no cartão !VISUAL. O conjunto de dados mínimo é o seguinte.

!WRITE,VISUAL
!VISUAL,method=PSR
!surface_num=1
!surface 1
!output_type=VTK

As especificações surface_num e !surface não podem ser omitidas. Consulte !VISUAL para a sintaxe detalhada e as opções disponíveis.

Os principais formatos de visualização são os seguintes.

Formato Utilização
VTK Utilizado para visualização no ParaView e em ferramentas semelhantes.
AVS(UCD) Utilizado para visualização e intercâmbio de dados no formato AVS / UCD.
BMP Emite os resultados de visualização como imagens.
NEU Utilizado para intercâmbio de dados no formato neutral do FEMAP.

Os ficheiros de visualização são mais fáceis de tratar diretamente em ferramentas de visualização do que os ficheiros de resultados, mas o seu tamanho aumenta consoante o formato selecionado e o número de variáveis. Em modelos de grande escala, ative com !OUTPUT_VIS apenas as variáveis necessárias para a apresentação.

Reinício

O reinício é uma função que guarda o estado interno no ponto em que uma análise é interrompida e permite retomar o cálculo a partir do mesmo estado na execução seguinte. Os ficheiros de resultados normais destinam-se ao pós-processamento, enquanto os ficheiros de reinício guardam o estado necessário para o solver continuar o cálculo.

Quando n em !RESTART, FREQUENCY=n é positivo, é escrito um ficheiro de reinício no intervalo de passos especificado. Quando n é negativo, é lido um ficheiro de reinício existente no arranque da execução e, em seguida, são escritos ficheiros de reinício utilizando o valor absoluto |n| como intervalo de saída.

No reinício de uma análise estrutural, são guardados o passo atual, o subpasso, o número acumulado de passos, o tempo, o incremento temporal, o histórico de carga, o deslocamento, a força externa, a tensão e a deformação em cada ponto de Gauss, as variáveis de estado internas do material, o estado de contacto e outros dados. Na análise dinâmica, para além do deslocamento, são também guardados o estado dinâmico necessário para retomar a integração temporal, incluindo velocidade e aceleração, energia de deformação, tempo atual e incremento temporal. Na análise térmica, são guardados o número do passo, o tempo e o campo de temperatura; ao ler, o campo de temperatura é restaurado como estado inicial.

Momento da escrita e comportamento de retoma no reinício da análise estática

No reinício da análise estática (fstr_solve_NLGEOM), existem dois caminhos de escrita, com comportamentos de retoma diferentes.

  • Escrita durante um subpasso: o ficheiro é escrito dentro do ciclo de subpassos quando step_count se torna um múltiplo de FREQUENCY. A informação temporal registada é guardada como «tempo de início do passo atual», acompanhada pela lista de cargas do passo anterior.
  • Escrita no fim de um passo: o ficheiro é sempre escrito imediatamente após a conclusão do ciclo de subpassos de cada passo de carga, independentemente de o passo ser ou não múltiplo de FREQUENCY. A informação temporal registada é guardada como «tempo de fim do passo», acompanhada pela lista de cargas desse passo.

Ao ler, o FrontISTR determina se o passo está concluído verificando se o «tempo atual» registado coincide com o «tempo de referência» (fstr_read_restart em fstr_Restart.f90).

Estado no momento da escrita Comportamento na retoma
Durante um subpasso Continua a partir do subpasso seguinte do mesmo passo. Mantém a posição do subpasso no momento da escrita e executa o restante ciclo de subpassos.
Fim do passo Inicia no primeiro subpasso do passo seguinte. Avança cstep em 1, repõe substep=1 e prossegue a análise.

Assim, mesmo com a mesma configuração de FREQUENCY, o número do passo e a referência temporal após a retoma variam consoante o momento em que ocorreu a escrita (durante um subpasso / no fim do passo). Em particular, a escrita no fim do passo é sempre efetuada no final de cada passo, independentemente da configuração de FREQUENCY.

Momento da escrita e comportamento de retoma no reinício da análise dinâmica

O reinício da análise dinâmica de histórico temporal também distingue entre escritas durante um subpasso e escritas no fim do passo. Durante um subpasso, é escrito um ficheiro quando o número acumulado de subpassos step_count se torna um múltiplo de FREQUENCY; no fim do passo, é escrito um ficheiro no final desse passo, independentemente de FREQUENCY.

Ao ler, a posição de retoma é restaurada a partir do número de passo guardado, do número de subpasso e da contagem acumulada de subpassos. O formato atual (restart_version >= 5) utiliza um cabeçalho comum ao da análise estática e guarda o tempo atual, o incremento temporal, as estatísticas das iterações de Newton e o estado de incremento automático. Assim, mesmo numa análise dinâmica que utilize vários cartões !STEP e incremento automático/cutback, a referência temporal e o incremento temporal são mantidos após o reinício. Os ficheiros de reinício de análise dinâmica em formatos antigos mantêm compatibilidade parcial de leitura, mas as novas análises devem utilizar o formato atual.

Como escrever os cartões !STEP ao reiniciar

Ao retomar a partir de um reinício, o FrontISTR lê os cartões !STEP do ficheiro cnt como a «sequência de passos a executar após a retoma» e processa-os sempre por ordem a partir do primeiro (tot_step=1). O número do passo nas informações de reinício lidas é utilizado para alinhar o número acumulado de passos apresentado no ecrã e não afeta o índice !STEP no próprio ficheiro cnt. Além disso, no formato atual, o starttime de cada !STEP no ficheiro cnt recebe, de uma só vez, a adição do tempo de referência durante a leitura do reinício, alinhando a linha temporal com o tempo de reinício como origem.

Por conseguinte, prepare o ficheiro cnt para a retoma de reinício de acordo com a política seguinte.

Forma como a execução foi interrompida Intervalo de cartões !STEP a manter no cnt
Escrito durante um subpasso (passo incompleto) Mantenha o passo interrompido em primeiro lugar. Em seguida, coloque os passos ainda não executados.
Escrito no fim de um passo (passo concluído) Remova os passos já concluídos e coloque em primeiro lugar o passo que deve ser executado a seguir.

Em qualquer dos casos, a regra básica é remover do ficheiro cnt os passos que já tenham sido concluídos. Como o tempo de reinício é adicionado automaticamente a starttime, o ficheiro cnt pode utilizar uma origem em 0 (ou tempos relativos de início dos passos). Referências como condições de fronteira e cargas devem ser mantidas no ficheiro cnt apenas para os cartões !STEP que permanecem. A mesma política aplica-se ao reinício de análise dinâmica com vários cartões !STEP.

Um fluxo típico de reinício é o seguinte.

  1. Na execução inicial, especifique !RESTART, FREQUENCY=n e escreva um ficheiro de reinício.
  2. Na execução que retoma a análise, especifique !RESTART, FREQUENCY=-n.
  3. O FrontISTR lê o ficheiro de reinício no arranque e, em seguida, escreve um novo estado a cada n passos.

Consulte o guia de execução para a nomenclatura e localização dos ficheiros de reinício e para a forma de os especificar na execução. Existe também compatibilidade parcial de leitura com ficheiros de formatos antigos, mas as novas análises devem utilizar o formato atual.

Tópicos relacionados

  • Execução sequencial — Fundamentos da colocação de ficheiros e da verificação da saída durante a execução da análise.
  • !OUTPUT_RES!OUTPUT_VIS — Especificação das variáveis a emitir para ficheiros de resultados e ficheiros de visualização.
  • !WRITE — Ativação da saída de ficheiros de resultados, ficheiros de visualização e logs, e especificação da frequência de saída (parâmetros RESULT / VISUAL / LOG / FEMAP).
  • !VISUAL — Especificação das superfícies de visualização e dos formatos de saída (incluindo um exemplo de conjunto de dados mínimo).
  • !RESTART — Especificação da leitura e escrita de ficheiros de reinício.
  • Tipos de análise — Principais itens de resultados para cada tipo de análise.
  • Contacto e embebimento — Significado da saída de contacto e tratamento dos estados de contacto.
  • Controlo de passos — Relação com os passos de saída e os pontos temporais.