コード例 #1
0
		/** Tests the calc. of a PWM on base of a motif */
		public void TestConstructorMotif () {
			PWM pwm = new PWM( "PWM1", alpha, "A[TG]", 0.0 );
			Assert.AreEqual( 100.0, pwm.Get( 'a', 0 ), 1e-3 );
			Assert.AreEqual( 1.0, pwm.Get( 'c', 0 ), 1e-3 );
			Assert.AreEqual( 1.0, pwm.Get( 't', 0 ), 1e-3 );
			Assert.AreEqual( 1.0, pwm.Get( 'g', 0 ), 1e-3 );
			Assert.AreEqual( 1.0, pwm.Get( 'a', 1 ), 1e-3 );
			Assert.AreEqual( 1.0, pwm.Get( 'c', 1 ), 1e-3 );
			Assert.AreEqual( 100.0, pwm.Get( 't', 1 ), 1e-3 );
			Assert.AreEqual( 100.0, pwm.Get( 'g', 1 ), 1e-3 );
		}
コード例 #2
0
		/** Tests the adding of weights as strings */
		public void TestAddString () {
			PWM pwm = new PWM( "test", alpha, 0.0 );

			pwm.Add( 'a', "1 2 3" );
			pwm.Add( alpha['c'], "2 4 6" );
			Assert.AreEqual( 3, pwm.WeightedVectorLength );
			Assert.AreEqual( 2, pwm.SymbolNumber );
			Assert.AreEqual( 1.0, pwm.Get( 'a', 0 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 'a', 1 ), 1e-3 );
			Assert.AreEqual( 3.0, pwm.Get( 'a', 2 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 'c', 0 ), 1e-3 );
			Assert.AreEqual( 4.0, pwm.Get( 'c', 1 ), 1e-3 );
			Assert.AreEqual( 6.0, pwm.Get( 'c', 2 ), 1e-3 );
		}
コード例 #3
0
		/** Tests the adding and getting of weights */
		public void TestAddGet () {
			PWM pwm = new PWM( "test", alpha, 0.0 );
			double[] w1 = { 1.0, 2.0, 3.0 };
			double[] w2 = { 2.0, 4.0, 6.0 };
			pwm.Add( 'a', w1 );
			pwm.Add( alpha['c'], w2 );
			Assert.AreEqual( w1, pwm.Get( alpha['a'] ) );
			Assert.AreEqual( null, pwm.Get( alpha['z'] ) );
			Assert.AreEqual( w2, pwm.Get( 'c' ) );
			Assert.AreEqual( 3, pwm.WeightedVectorLength );
			Assert.AreEqual( 2, pwm.SymbolNumber );
			Assert.AreEqual( 1.0, pwm.Get( 'a', 0 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 'a', 1 ), 1e-3 );
			Assert.AreEqual( 3.0, pwm.Get( 'a', 2 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 'c', 0 ), 1e-3 );
			Assert.AreEqual( 4.0, pwm.Get( 'c', 1 ), 1e-3 );
			Assert.AreEqual( 6.0, pwm.Get( 'c', 2 ), 1e-3 );

			Assert.AreEqual( 1.0, pwm.Get( 't', 0 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 't', 1 ), 1e-3 );
			Assert.AreEqual( 3.0, pwm.Get( 't', 2 ), 1e-3 );
		}
コード例 #4
0
		/** Tests the setting and getting of weights */
		public void TestSetGet () {
			PWM pwm = new PWM( "test", alpha, 0.0 );
			pwm.Add( alpha['a'], "0 0" );
			pwm.Set( alpha['a'], 0, 1 );
			pwm.Set( 'a', 1, 2 );
			Assert.AreEqual( 1.0, pwm.Get( 'a', 0 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 'a', 1 ), 1e-3 );

			Assert.AreEqual( 1.0, pwm.Get( 't', 0 ), 1e-3 );
			Assert.AreEqual( 2.0, pwm.Get( 't', 1 ), 1e-3 );
		}