Chemistry-Reaction
view release on metacpan or search on metacpan
lib/Chemistry/Reaction.pm view on Meta::CPAN
$subst substrate into the $prod product, according to the %map mapping
of substrate atoms to product atoms.
=cut
sub new {
my ($class, $substrate, $product, $mapping, %args) = @_;
die sprintf(
"$class substrate and product must coincide on atoms (%s ne %s)\n",
$substrate->formula, $product->formula)
if $substrate->formula ne $product->formula;
my $order1 = 0;
foreach my $bond ($substrate->bonds) {
$order1 += $bond->order;
}
my $order2 = 0;
foreach my $bond ($product->bonds) {
$order2 += $bond->order;
}
die "$class substrate and product must coincide on total bond order\n"
( run in 0.558 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )