"""
Este vai rodar os testes
"""
from os import system
import json

"""
Geracao dos valores iniciais
"""
dir_presets = 'presets/virial4'
def abrir_json (arquivo:str):
    with open(arquivo, 'r') as arq:
        json_obj = json.load(arq)
    return json_obj

def salvar_json (json_obj, nome:str):
    with open(nome, 'w') as arq:
        json.dump(json_obj, arq)

# Abre um arquivo-base com os valores iniciais
arquivo_base = abrir_json(f'{dir_presets}/base.json')

# Agora gera copias conforme os epsilons desejados
epsilons = [0.02, 0.025, 0.03, 0.035, 0.04, 0.045, 0.05]
arquivos_vi = []
for i, epsilon in enumerate(epsilons):
    arquivo_base['integracao']['amortecedor'] = epsilon
    nome_arquivo = f'{dir_presets}/teste_{i+1}.json'
    salvar_json(arquivo_base, nome_arquivo)
    arquivos_vi.append(nome_arquivo)

"""
Rodando as simulações
"""
rodar_simulacao = lambda arquivo: system(f'./gravidade -s {arquivo}')

# Chama as simulações
for arquivo_vi in arquivos_vi:
    rodar_simulacao(arquivo_vi)
