Tema
Mensagens comuns
O que fazer quando a execução para com erro. Cada mensagem aponta o elemento e o campo em que o problema está — vale ler a mensagem inteira antes de procurar.
Identificador desconhecido
INVALID_EXPRESSION: unknown identifier 'X'
Uma expressão menciona um nome que não existe no modelo. Quase sempre é erro de digitação.
Confira, nessa ordem:
- O nome está escrito igual? Maiúsculas e minúsculas contam:
Filaefilasão nomes diferentes. - Faltou o
#? Para a quantidade de fichas de um lugar, escreve-se#Fila. Sem o#, ele é procurado entre os parâmetros e não é encontrado. - O parâmetro existe mesmo? Se você renomeou um parâmetro, as expressões que o usavam continuam com o nome antigo.
Expressão mal formada
INVALID_EXPRESSION: unexpected token
A expressão está incompleta ou tem símbolo a mais. Causas comuns:
- operador solto no fim:
E{#Fila} + - parênteses ou chaves desbalanceados
IFsem oELSEcorrespondente- notação científica:
1e-6— escreva0.000001 - vírgula como decimal:
0,5— escreva0.5
Tempo não positivo
INVALID_DISTRIBUTION: transition 'T' has a non-positive mean delay
Uma transição temporizada ficou com tempo zero ou negativo. Toda duração precisa ser maior que zero.
Se o valor vem de um parâmetro, confira o valor dele — e, se estiver varrendo cenários, confira se o início do intervalo não é zero. Uma varredura de 0 a 10 falha no primeiro ponto.
Valor não-finito
NON_FINITE_METRIC: a métrica 'X' produziu um valor não-finito
Uma métrica dividiu por zero. Veja Divisão por zero — a solução costuma ser proteger com IF, ou dividir por outra coisa.
Nome duplicado
DUPLICATE_NAME: duplicate place name 'P'
Dois elementos com o mesmo nome. Renomeie um deles — nomes precisam ser únicos, porque as expressões se referem a eles.
Limite de eventos atingido
MAX_EVENTS_REACHED
A simulação precisou de mais passos do que o limite configurado. Duas saídas:
- Reduzir o tempo de simulação. Costuma ser o suficiente, e é mais rápido.
- Aumentar o limite nas opções avançadas.
Isso acontece quando o modelo tem transições muito rápidas junto de um tempo de simulação longo: cada unidade de tempo gera muitos eventos. Veja Configurar a execução.
Dependência circular
INVALID_DEFINITIONS: definitions contain cyclic dependencies
Dois parâmetros dependem um do outro, direta ou indiretamente. Decida qual é o valor de base e escreva o outro em função dele. Veja Combinando parâmetros.
Distribuição desconhecida
INVALID_JSON: unknown variant
O modelo tem uma transição com distribuição que não pode ser simulada. As disponíveis são exponencial, normal e determinística. Veja Quanto tempo leva.
Costuma acontecer com modelo importado de outra origem.
A mensagem diz onde
Toda mensagem traz o componente e o campo em que o problema está. Num modelo grande, é mais rápido ir direto ao elemento citado do que reler o modelo inteiro.