Ejemplo n.º 1
0
 public static void RaiseInteractionsInformation(MolecularInteractionsInformation information)
 {
     if (OnInteractionsInformation != null)
     {
         OnInteractionsInformation(information);
     }
 }
Ejemplo n.º 2
0
        // 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);
        }
Ejemplo n.º 3
0
        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);
 }