module vehicle_platoon_5
using ReachabilityAnalysis
A = [0 1 0 0 0 0 0 0 0 0 0 0 0 0 0;
    0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0;
    1.7152555329 3.9705119979 -4.3600526739 -0.9999330812 -1.5731541104 0.2669165553 -0.2215507198 -0.4303855023 0.0669078193 -0.0881500219 -0.1881468451 0.0322187056 -0.0343095071 -0.0767587194 0.0226660281;
    0 0 0 0 1 0 0 0 0 0 0 0 0 0 0;
    0 0 1 0 0 -1 0 0 0 0 0 0 0 0 0;
    0.7153224517 2.3973578876 0.2669165553 1.4937048131 3.5401264957 -4.2931448546 -1.0880831031 -1.7613009555 0.2991352608 -0.2558602268 -0.5071442217 0.0895738474 -0.0881500219 -0.1881468451 0.0548847337;
    0 0 0 0 0 0 0 1 0 0 0 0 0 0 0;
    0 0 0 0 0 1 0 0 -1 0 0 0 0 0 0;
    0.493771732 1.9669723853 0.0669078193 0.6271724298 2.2092110425 0.2991352608 1.4593953061 3.4633677762 -4.2704788265 -1.0880831031 -1.7613009555 0.3218012889 -0.2215507198 -0.4303855023 0.121792553;
    0 0 0 0 0 0 0 0 0 0 1 0 0 0 0;
    0 0 0 0 0 0 0 0 1 0 0 -1 0 0 0;
    0.40562171 1.7788255402 0.0322187056 0.4594622249 1.8902136659 0.0895738474 0.6271724298 2.2092110425 0.3218012889 1.4937048131 3.5401264957 -4.2382601209 -0.9999330812 -1.5731541104 0.3887091083;
    0 0 0 0 0 0 0 0 0 0 0 0 0 1 0;
    0 0 0 0 0 0 0 0 0 0 0 1 0 0 -1;
    0.371312203 1.7020668208 0.0226660281 0.40562171 1.7788255402 0.0548847337 0.493771732 1.9669723853 0.121792553 0.7153224517 2.3973578876 0.3887091083 1.7152555329 3.9705119979 -3.9713435656;
]

function model(X0)
    S = @system(x' = Ax)
    return IVP(S, X0)
end
end # module
