mirror of
https://gitlab.com/scemama/QCaml.git
synced 2024-08-17 18:21:43 +02:00
22 lines
530 B
OCaml
22 lines
530 B
OCaml
(** Read a basis set file in GAMESS format and return an association list where the key is an
|
|
Element.t and the value is the parsed basis set. *)
|
|
let read ~filename =
|
|
let lexbuf =
|
|
let ic = open_in filename in
|
|
Lexing.from_channel ic
|
|
in
|
|
let rec aux accu =
|
|
try
|
|
let element, basis =
|
|
Gamess_parser.input Basis_lexer.read_all lexbuf
|
|
in
|
|
let key =
|
|
Element.of_string element
|
|
in
|
|
aux ((key, basis)::accu)
|
|
with
|
|
| Parsing.Parse_error -> List.rev accu
|
|
in
|
|
aux []
|
|
|