28 lines
846 B
Rust
28 lines
846 B
Rust
//! TLUSTY 可执行程序入口。
|
|
//!
|
|
//! 用法:
|
|
//! tlusty < input.5 > output.6
|
|
|
|
use std::io::{self, BufReader};
|
|
|
|
use tlusty_rust::tlusty::{run_tlusty, TlustyConfig};
|
|
use tlusty_rust::tlusty::io::{FortranReader, FortranWriter};
|
|
|
|
fn main() -> anyhow::Result<()> {
|
|
let mut config = TlustyConfig::default();
|
|
let mut input_reader = FortranReader::new(BufReader::new(io::stdin()));
|
|
let mut output_writer = FortranWriter::new(io::stdout());
|
|
|
|
let result = run_tlusty(&mut config, &mut input_reader, &mut output_writer);
|
|
|
|
if result.converged {
|
|
eprintln!("Converged after {} iterations ({:.2}s)",
|
|
result.total_iterations, result.total_time_secs);
|
|
} else {
|
|
eprintln!("Did NOT converge after {} iterations ({:.2}s)",
|
|
result.total_iterations, result.total_time_secs);
|
|
}
|
|
|
|
Ok(())
|
|
}
|