public static void RaiseInteractionsInformation(MolecularInteractionsInformation information) { if (OnInteractionsInformation != null) { OnInteractionsInformation(information); } }
// Exports inetaction results as an info class. Used to report interactions data in the UI private void outputInteractionResults(List <AtomInteraction> interactions) { MolecularInteractionsInformation info = new MolecularInteractionsInformation(); foreach (AtomInteraction interaction in interactions) { if (interaction.InteractionType != null) { if (interaction.LennardJonesPotential != null && interaction.LennardJonesPotential != 0) { info.SummedInteractionEnergy += (double)interaction.LennardJonesPotential; info.SummedLennardJonesEnergy += (double)interaction.LennardJonesPotential; if ((double)interaction.LennardJonesPotential >= 0) { info.SummedRepulsionForce += (double)interaction.LennardJonesPotential; info.SummedLennardJonesRepulsionEnergy += (double)interaction.LennardJonesPotential; } else { info.SummedAttractionForce += (double)interaction.LennardJonesPotential; info.SummedLennardJonesAttractionEnergy += (double)interaction.LennardJonesPotential; } } if (interaction.ElectrostaticEnergy != null && interaction.ElectrostaticEnergy != 0) { info.SummedInteractionEnergy += (double)interaction.ElectrostaticEnergy; info.SummedElectrostaticForce += (double)interaction.ElectrostaticEnergy; if ((double)interaction.ElectrostaticEnergy >= 0) { //info.SummedRepulsionForce += (double)interaction.ElectrostaticForce; info.SummedElectrostaticRepulsionForce += (double)interaction.ElectrostaticEnergy; } else { //info.SummedAttractionForce += (double)interaction.ElectrostaticForce; info.SummedElectrostaticAttractionForce += (double)interaction.ElectrostaticEnergy; } } info.TotalInteractions++; if (interaction.InteractionType == InteractionType.Attractive) { info.TotalAttractiveInteractions++; } else if (interaction.InteractionType == InteractionType.Stable) { info.TotalStableInteractions++; } else { info.TotalRepulsiveInteractions++; } } } MoleculeEvents.RaiseInteractionsInformation(info); }
public void ShowInformation(MolecularInteractionsInformation information) { InteractionScoreText.text = getForceString(information.SummedInteractionEnergy) + " kJ/mol"; InformationText.text = "Attraction Energy: " + getForceString(information.SummedAttractionForce) + "\n" + "Repulsion Energy: " + getForceString(information.SummedRepulsionForce) + "\n\n" + "Stable Interactions: " + information.TotalStableInteractions + "\n" + "Attractive Interactions: " + information.TotalAttractiveInteractions + "\n" + "Repulsive Interactions: " + information.TotalRepulsiveInteractions + "\n" + "Total Interactions: " + information.TotalInteractions + "\n\n" + "VDW Energy: " + getForceString(information.SummedLennardJonesEnergy) + "\n" + "VDW Attraction: " + getForceString(information.SummedLennardJonesAttractionEnergy) + "\n" + "VDW Repulsion: " + getForceString(information.SummedLennardJonesRepulsionEnergy) + "\n\n" + "Electrostatic Energy: " + getForceString(information.SummedElectrostaticForce) + "\n" + "Electrostatic Attraction: " + getForceString(information.SummedElectrostaticAttractionForce) + "\n" + "Electrostatic Repulsion: " + getForceString(information.SummedElectrostaticRepulsionForce); // + "\n" + //"\nDebug Info: " + information.DebugString + "\n"; }
public void ShowInteractionsInformation(MolecularInteractionsInformation information) { interactionsSettingsPanel.ShowInformation(information); }