Ejemplo n.º 1
0
        public Aglomerative(HierarchicalCInput obj, ClusterAlgorithm alg, INPUTMODE mode, bool flag, List <string> profiles)
        {
            InitializeComponent();
            Settings set = new Settings();

            set.Load();
            switch (set.mode)
            {
            case INPUTMODE.RNA:
                distanceControl1.HideAtoms = true;
                break;

            case INPUTMODE.USER_DEFINED:
                distanceControl1.HideRmsdLike = true;
                break;
            }
            foreach (var item in Enum.GetValues(typeof(AglomerativeType)))
            {
                comboBox1.Items.Add(Enum.GetName(typeof(AglomerativeType), item));
            }

            if (obj != null)
            {
                comboBox1.SelectedItem            = Enum.GetName(typeof(AglomerativeType), obj.linkageType);
                distanceControl1.reference        = obj.reference1DjuryH;
                distanceControl1.referenceProfile = obj.jury1DProfileH;
                distanceControl1.distDef          = obj.distance;
                distanceControl1.CAtoms           = obj.atoms;
                distanceControl1.profileName      = obj.hammingProfile;
            }
        }
Ejemplo n.º 2
0
        private void SetOptions()
        {
            localOpt = new HierarchicalCInput();

            localOpt.linkageType = (AglomerativeType)Enum.Parse(typeof(AglomerativeType), comboBox1.SelectedItem.ToString());
            alg = ClusterAlgorithm.HierarchicalCluster;
            if (distanceControl1.distDef == DistanceMeasures.RMSD || distanceControl1.distDef == DistanceMeasures.MAXSUB || distanceControl1.distDef == DistanceMeasures.GDT_TS)
            {
                localOpt.reference1DjuryH = false;
            }
            else
            {
                string hammingProfile = distanceControl1.profileName;

                localOpt.hammingProfile       = hammingProfile;
                localOpt.reference1DjuryAglom = distanceControl1.reference;
                localOpt.jury1DProfileAglom   = hammingProfile.Replace("_distance", "");
                if (!localOpt.jury1DProfileAglom.Contains(".profiles"))
                {
                    localOpt.jury1DProfileAglom = localOpt.jury1DProfileAglom.Replace(".profile", ".profiles");
                }
            }


            localOpt.distance = distanceControl1.distDef;
            localOpt.atoms    = distanceControl1.CAtoms;
        }
Ejemplo n.º 3
0
        public HierarchicalCForm(Options opt, ClusterAlgorithm alg, INPUTMODE mode, bool flag, List <string> profiles)
        {
            HierarchicalCInput obj = opt.hierarchical;

            this.alg  = alg;
            objCopy   = obj;
            this.mode = mode;
            InitializeComponent();
            if (profiles != null)
            {
                button3.Visible = true;
                profileFile     = profiles[0];
            }
            else
            {
                button3.Visible = false;
            }

            userHash1.regularizationOff();
            SizeHeight = this.Size.Height;
            distanceControl1.refChanged = ReferanceCheckChanged;
            //distanceControl1.FreezeCAtoms();
            Settings set = new Settings();

            set.Load();
            if (set.mode == INPUTMODE.RNA)
            {
                distanceControl1.HideAtoms = true;
            }

            foreach (var item in Enum.GetValues(typeof(AglomerativeType)))
            {
                comboBox1.Items.Add(Enum.GetName(typeof(AglomerativeType), item));
            }

            if (obj != null)
            {
                comboBox1.SelectedItem = Enum.GetName(typeof(AglomerativeType), obj.linkageType);
                numericBox1.Text       = obj.numInitNodes.ToString();
                DBIndex.Value          = (decimal)obj.indexDB;
                threshold.Value        = (decimal)obj.numberOfStruct;
                maxRepeat.Value        = (decimal)obj.repeatTime;
                maxK.Value             = (decimal)obj.maxK;

                switch (alg)
                {
                case ClusterAlgorithm.FastHCluster:
                    AglomRadio.Checked        = false;
                    FastHClusterRadio.Checked = true;
                    KmeansRadio.Checked       = false;
                    userHash1.Visible         = false;
                    radioButton3.Checked      = false;
                    groupBox1.Visible         = true;
                    if (radioButton1.Checked)
                    {
                        if (distanceControl1.reference)
                        {
                            jury1DSetup3.Visible = false;
                        }
                        else
                        {
                            jury1DSetup3.Visible = true;
                        }
                    }
                    this.Size = new Size(this.Size.Width, SizeHeight / 2 + SizeHeight / 4);
                    distanceControl1.reference        = obj.reference1DjuryFast;
                    distanceControl1.referenceProfile = obj.consensusProfile;
                    userHash1.profRefFile             = obj.jury1DProfileFast;
                    break;

                case ClusterAlgorithm.HKmeans:
                    AglomRadio.Checked        = false;
                    FastHClusterRadio.Checked = false;
                    KmeansRadio.Checked       = true;
                    groupBox1.Visible         = false;
                    radioButton3.Checked      = false;
                    userHash1.Visible         = false;
                    this.Size = new Size(this.Size.Width, SizeHeight / 2 + SizeHeight / 3);
                    distanceControl1.reference        = obj.reference1DjuryKmeans;
                    distanceControl1.referenceProfile = obj.jury1DProfileKmeans;
                    break;

                case ClusterAlgorithm.uQlustTree:
                    userHash1.Visible         = true;
                    AglomRadio.Checked        = false;
                    FastHClusterRadio.Checked = false;
                    KmeansRadio.Checked       = false;
                    groupBox1.Visible         = false;
                    radioButton3.Checked      = true;
                    this.Size = new Size(this.Size.Width, SizeHeight);
                    distanceControl1.reference        = obj.reference1DjuryH;
                    distanceControl1.referenceProfile = obj.jury1DProfileH;
                    break;

                default:    //Aglomerative
                    AglomRadio.Checked                = true;
                    FastHClusterRadio.Checked         = false;
                    KmeansRadio.Checked               = false;
                    groupBox1.Visible                 = false;
                    userHash1.Visible                 = false;
                    radioButton3.Checked              = false;
                    distanceControl1.reference        = obj.reference1DjuryAglom;
                    distanceControl1.referenceProfile = obj.jury1DProfileAglom;
                    break;
                }
                distanceControl1.distDef     = obj.distance;
                distanceControl1.CAtoms      = obj.atoms;
                distanceControl1.profileName = obj.hammingProfile;

                jury1DSetup3.profileName = obj.consensusProfile;
                checkBox2.Checked        = obj.ItMeans;
                numericUpDown1.Value     = obj.ItNum;
                if (obj.HConsensus)
                {
                    radioButton1.Checked = false;
                    radioButton2.Checked = true;
                }
                else
                {
                    radioButton1.Checked = true;
                    radioButton2.Checked = false;
                }
                if (flag)
                {
                    distanceControl1.FreezDist();
                    //  distanceControl1.distDef = DistanceMeasures.HAMMING;
                }
                // distanceControl1.CAtoms = PDB.PDBMODE.ONLY_CA;
                userHash1.SetHash(opt.hash);
            }
        }