@@ -710,7 +710,7 @@ void Network::generateStateNetworkFromMultilayerWithInterLinks()
710710 unsigned int stateId2i = addMultilayerNode (layer2, targetPhysId);
711711
712712 // Log() << " -> " << targetPhysId << "\n";
713- double weight = interWeight * intraWeight / sumIntraOutWeightTargetLayer;
713+ double weight = sumIntraOutWeightTargetLayer == 0.0 ? 0.0 : interWeight * intraWeight / sumIntraOutWeightTargetLayer;
714714
715715 addLink (stateId1, stateId2i, weight);
716716 ++m_numInterLayerLinks; // TODO: Count all as one?
@@ -748,7 +748,7 @@ void Network::generateStateNetworkFromMultilayerWithInterLinks()
748748 unsigned int stateId2i = addMultilayerNode (layer2, targetPhysId);
749749
750750 // Log() << " -> " << targetPhysId << "\n";
751- double weight = interWeight * intraWeight / sumIntraOutWeightTargetLayer;
751+ double weight = sumIntraOutWeightTargetLayer == 0.0 ? 0.0 : interWeight * intraWeight / sumIntraOutWeightTargetLayer;
752752
753753 addLink (stateId1, stateId2i, weight);
754754 ++m_numInterLayerLinks; // TODO: Count all as one?
@@ -839,8 +839,7 @@ void Network::generateStateNetworkFromMultilayerWithSimulatedInterLinks()
839839 unsigned int stateId2i = addMultilayerNode (layer2, n2);
840840
841841 // Log() << " -> " << n2 << "\n";
842- double weight = linkWeightNormalizationFactor * intraWeight;
843-
842+ double weight = intraWeight == 0.0 ? 0.0 : linkWeightNormalizationFactor * intraWeight;
844843 addLink (stateId1, stateId2i, weight);
845844 ++m_numInterLayerLinks; // TODO: Count all as one?
846845 }
0 commit comments