⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 forcefieldtests.java

📁 化学图形处理软件
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
	/**	 *  A unit test for JUnit (BondStretching)	 */	public void testBondStretching() throws Exception {		//logger.debug("");		//logger.debug("FORCEFIELDTESTS with Bond Stretching");		double testResult_SumEB = 164.37972112718;		double[] testResult_gradientSumEB = {-5.45515932404852,-6.48301447319298,62.375490960204004,7.215112040885087,				17.691850072855214,-17.864815087533966,-25.53709462892573,8.797695542553555,-41.040060828236314,19.93844402757681,				-14.563941666352736,6.046315156377083,205.23205964792473,716.6248883628301,-66.50259680461075,-122.18702194641659,				-676.5540659625659,89.00042339306896,-54.54280594897065,-38.771392180593594,-36.50126444120599,-24.663533868025148,				-6.742019695533713,4.486507651936976};		double[] testResult_hessianSumEB = {838.7345581626308,	-490.508256979552,	206.25489080239663,	-41.10811797233039,					-136.67859760328315, 187.6749877479929,	-226.92130670470732, 142.11402590661103, -393.5494485762997, 				-505.1462369756591, 410.5007840411007, -136.46777719213765, -65.55889650993397, 74.5720446351234, 				136.08734721804785, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,								-490.50825697955213, 738.4815880177924, -553.7035840137708, -136.67859760328315, -371.02265039698926, 				424.31011368353694, 142.11402590661103, 14.978948563791874, 199.51850681209447, 410.50078404110076, 				-258.32923010712227, 141.20135553496644, 74.5720446351234, -124.1086560774728, -211.32639201682707, 				0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,								206.2548908023966, -553.7035840137708, 1428.6338291193285, 187.6749877479929, 424.31011368353694, 			   -378.79825004582136, -393.5494485762997, 199.51850681209447, -661.3335946380954, -136.46777719213765, 			   141.20135553496644, -24.666367005076978, 136.08734721804788, -211.32639201682707, -363.8356174303348, 			   0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -41.10811797233039, -136.67859760328315,	187.6749877479929, 41.10811797233039, 136.67859760328315, 			   -187.6749877479929,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -136.67859760328315,	-371.02265039698926, 424.31011368353694, 136.67859760328315, 371.02265039698926, 			   -424.31011368353694, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   187.6749877479929, 424.31011368353694, -378.79825004582136, -187.6749877479929, -424.31011368353694, 			   378.79825004582136, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -226.92130670470732,	142.11402590661103,	-393.5494485762997,	0.0, 0.0, 0.0, 226.92130670470732, 			   -142.11402590661103,	393.5494485762997, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   142.11402590661103, 14.978948563791874, 199.51850681209447, 0.0, 0.0, 0.0, -142.11402590661103, 			   -14.978948563791874, -199.51850681209447, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -393.5494485762997, 199.51850681209447, -661.3335946380954, 0.0, 0.0, 0.0, 393.5494485762997, 			   -199.51850681209447, 661.3335946380954, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -505.1462369756591, 410.5007840411007, -136.46777719213765, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 505.1462369756591, 			   -410.5007840411007, 136.46777719213765, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   410.50078404110076, -258.32923010712227, 141.20135553496644, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -410.50078404110076, 			   258.32923010712227, -141.20135553496644, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -136.46777719213765, 141.20135553496644, -24.666367005076978, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 136.46777719213765, 			   -141.20135553496644, 24.666367005076978,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   -65.55889650993397, 74.5720446351234, 136.08734721804785, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 			   1418.9840577897937, 1004.3556303528381, 144.36150490775267, -447.3029123948977, -765.7233975935093, -325.9998704144742,			   -150.97069785751137, -124.59079592322227, -120.79368882662007, -755.1515510274509, -188.61348147123016, 166.34470711529374,			   			   74.5720446351234, -124.1086560774728, -211.32639201682707, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1004.3556303528383, 			   2792.5216158896105, 345.24343338658866, -765.7233975935094, -2528.829417489526, -94.06396144264568, -124.59079592322227, 			   -105.83881743981195, -103.1396690217453, -188.61348147123016, -33.74472488280005, 63.286589094629434,			   			   136.08734721804788, -211.32639201682707, -363.8356174303348, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 144.36150490775267, 			   345.24343338658866, 880.0739245494975, -325.9998704144742, -94.06396144264568, -414.35640716564694, -120.79368882662007, 			   -103.1396690217453, -100.59856011043759, 166.34470711529374, 63.286589094629434, -1.2833398430781315,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -447.3029123948977, -765.7233975935093, -325.9998704144742, 			   447.3029123948977, 765.7233975935093, 325.9998704144742, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -765.7233975935094, -2528.829417489526, -94.06396144264568, 			   765.7233975935094, 2528.829417489526, 94.06396144264568, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -325.9998704144742, -94.06396144264568, -414.35640716564694, 			   325.9998704144742, 94.06396144264568, 414.35640716564694, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -150.97069785751137, -124.59079592322227, -120.79368882662007, 			   0.0, 0.0, 0.0, 150.97069785751137, 124.59079592322227, 120.79368882662007, 0.0, 0.0, 0.0,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -124.59079592322227, -105.83881743981195, 			   -103.1396690217453, 0.0, 0.0, 0.0, 124.59079592322227, 105.83881743981195, 103.1396690217453, 0.0, 0.0, 0.0,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -120.79368882662007, -103.1396690217453, 			   -100.59856011043759, 0.0, 0.0, 0.0, 120.79368882662007, 103.1396690217453, 100.59856011043759, 0.0, 0.0, 0.0,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -755.1515510274509, -188.61348147123016, 			   166.34470711529374, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 755.1515510274509, 188.61348147123016, -166.34470711529374,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -188.61348147123016, -33.74472488280005, 			   63.286589094629434, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 188.61348147123016, 33.74472488280005, -63.286589094629434,			   			   0.0, 0.0, 0.0, 0.0,	0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 166.34470711529374, 63.286589094629434, 			   -1.2833398430781315, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -166.34470711529374, -63.286589094629434, 1.2833398430781315};				 		BondStretching bs = new BondStretching();		bs.setMMFF94BondStretchingParameters(molecule, mmff94Tables);				moleculeCoordinates = ForceFieldTools.getCoordinates3xNVector(molecule);		//logger.debug("bs.functionMMFF94SumEB(moleculeCoordinates) = " + bs.functionMMFF94SumEB(moleculeCoordinates));		assertEquals(testResult_SumEB, bs.functionMMFF94SumEB(moleculeCoordinates), 0.00001);		bs.setGradientMMFF94SumEB(moleculeCoordinates);		//logger.debug("gradientMMFF94SumEB = " + bs.getGradientMMFF94SumEB());		for (int i = 0; i < testResult_gradientSumEB.length; i++) {			assertEquals(testResult_gradientSumEB[i], bs.getGradientMMFF94SumEB().getElement(i), 0.00001);		}		bs.setHessianMMFF94SumEB(moleculeCoordinates);		//logger.debug("HessianMMFF94SumEB = " + bs.getHessianMMFF94SumEB());		//logger.debug("bs.getHessianMMFF94SumEB() = " + bs.getHessianMMFF94SumEB());		for (int i = 0; i < 24; i++) {			for (int j = 0; j < 24; j++) {				//logger.debug("testResult_hessianSumEB[" + (i * 24 + j) + "] = " + testResult_hessianSumEB[i * 24 + j]);				//logger.debug("bs.getHessianMMFF94SumEB().getElement(" + i + ", " + j + ") = " + bs.getHessianMMFF94SumEB().getElement(i, j));				assertEquals(testResult_hessianSumEB[i * 24 + j], bs.getHessianMMFF94SumEB().getElement(i, j), 0.00001);			}		}	}	/**	 *  A unit test for JUnit (AngleBending)	 */	public void testAngleBending() throws ClassNotFoundException, CDKException, java.lang.Exception {		//logger.debug("");		//logger.debug("FORCEFIELDTESTS with Angle Bending");		double testResult_SumEA = 5187817.002469799;				double[] testResult_gradientSumEA = {-1826900.665119202,4874019.073980178,-2976646.8885927363,5436647.926898837,1544395.937926154,				3725157.2422888074,-3634259.3802939164,-5890831.429145373,998601.9376623626,94272.78336650936,-573645.144687769,				-1692632.0872584942,2458165.6181304716,3314333.7562086596,-3216324.9653861565,-3105947.007562904,213419.56169778062,				-2641746.3421344426,556439.2636210282,-4580435.001781547,4033835.1368662477,21581.4605026533,1098743.245967926,1769755.9673429523};				double[] testResult_hessianSumEA = {130683.846306297, 212234.67510572585, 138891.4346616306, -80599.65158382931, -53146.94541093669, 				45893.317429985385, -54160.68316382803, -83689.35171815247, -98865.42524238293, -14903.08247197629, -64184.89548225285, 				-99023.921275829, 24590.85157595449, -17445.984023657293, 2968.898084443173, 1397.0504531806494, -559.3323603501285, 				-2333.889438750818, -6926.681667675539, 2977.9491827488955, 7187.1871412436385, -81.64944651698873, 3813.884705820904, 				5282.398638849346, 				212234.67510126764, 87516.59233210611, -187258.53172228593, 53419.88265097874, -50011.86767227145, 9393.850514464806, 				-198811.08959716235, -36146.112080451254, 41138.636059514356, -47516.490064955666, 8898.72966880846, 138770.88158207343, 				-19885.175456215504, -12011.450433445103, 408.8454232442999, 3346.901551962076, -1604.0283799561603, -7598.435639203067, 				-2718.996685236438, 1396.2766003744364, 2579.8043541464435, -69.70750058277125, 1961.8599657671407, 2564.9494262623402, 				138891.43457206065, -187258.53198167408, -191890.7010834845, -103185.85973846416, -92294.07475740704, -43150.6506178261, 				-5443.366011976426, 193963.55031348663, 100253.26435341185, -21999.7516472814, 77454.26424948158, 143095.77794200176, 				-5679.896433895151, 6624.031942966264, -13799.19447220064, -1350.5359677090662, 691.7104453495699, 3404.046124861083, 				-1238.9557622832572, 402.6599779111938, 1423.6338551214842, 6.93099003010714, 416.389808994245, 663.8238984393021, 				-80599.65159598814, 53419.88267497215, -103185.85975662133, 179380.20764235142, 139513.64524180314, 79531.96532808243, 				-94960.42712482285, -188066.98339200337, 18773.29946551125, -3582.7648366270428, -3227.9781116855847, 4039.2653389452153, 				-237.36408542003247, -1638.5664128431617, 841.3296234339632, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-53146.945405424696, -50011.86770080415, -92294.07474751787, 139513.6452257535, 16197.570887443146, 35039.83362694745, 				-88746.42749334988, 27733.015687505962, 61167.369022432635, 1431.2236348940694, 1309.029207315117, -1566.5321893879832, 				948.5040384107085, 4772.251918620979, -2346.5957144196464, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				45893.317440279854, 9393.850485932107, -43150.650622365385, 79531.96532159773, 35039.83365385897, -23102.425180222977, 				-126239.12422068256, -48490.62231012322, 68157.17795855619, -29.614395128894433, -7.337061007133339, 79.98399350771885, 				843.4558533259291, 4064.2752313392707, -1984.0861496376535, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-54160.68314182056, -198811.08964806728, -5443.366046345358, -94960.4271235259, -88746.42751604634, -126239.12423462467, 				146417.80254400117, 237198.69021138066, 74366.18369090796, 12431.489620896387, 43962.06201152392, 64898.427643459014, 				-9728.181898902607, 6396.76494283019, -7582.121052424239, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-83689.35171811194, -36146.11200652563, 193963.5502081102, -188066.98336411914, 27733.015677941024, -48490.62229261452, 				237198.69016209693, 15082.538316111328, -69540.60905763856, 23983.982421088807, -1651.1259684352246, -83067.1541863393, 				10573.662500392951, -5018.316017551379, 7134.835329130672, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-98865.42526285027, 41138.63618385856, 100253.26434757562, 18773.29948496536, 61167.369018541816, 68157.17796309547, 				74366.1836516755, -69540.60908519855, -116467.99081155541, -2594.059308579129, -27709.253321017884, -58189.89476465562, 				8320.001435923366, -5056.142798129351, 6247.443265377826, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-14903.082485016625, -47516.490054519345, -21999.75169690965, -3582.764840173365, 1431.2236402844796, -29.614394439894628, 				12431.489626367857, 23983.982415566676, -2594.059307484835, 6411.1481773136165, 21802.123298208393, 24938.42400139562, 				-356.79047812671826, 299.1607000545007, -314.9986046687674, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-64184.895518242956, 8898.729731547972, 77454.26419744184, -3227.978104957704, 1309.0292078825285, -7.337059061722124, 				43962.06201411781, -1651.1259665708722, -27709.25330853483, 21802.123308735903, -7634.676522585171, -50929.93294224163, 				1648.6883004989331, -921.9564497070453, 1192.2591136932797, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				-99023.92125292988, 138770.88166394283, 143095.77794540624, 4039.2653282454535, -1566.5321876046896, 79.98399691218847, 				64898.427642162074, -83067.1542019026, -58189.894752172564, 24938.423985052137, -50929.932944835506, -88896.4430660727, 				5147.804297216913, -3207.2623300863943, 3910.5758770616617, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 				24590.851596057073, -19885.17545929574, -5679.896465670201, -237.36408574426767, 948.5040401940022, 843.4558502456947, 				-9728.181898578372, 10573.662501689892, 8320.001439489954, -356.79047680951277, 1648.688300579992, 5147.804304512206, 				5716.720520027591, 35013.212915586104, 154526.77983828308, -13596.22369683916, 31333.539137130505, 3480.5325716780835, 				-4958.2788337923175, 1690.5794186236562, -68702.35309475935, -1430.733124321035, -61323.010854893444, -97936.32444394157, 				-17445.984011984827, -12011.450448846275, 6624.031967608139, -1638.5664102492801, 4772.251923484508, 4064.2752219364497, 				6396.764938290897, -5018.316022090672, -5056.142799426292, 299.1607011386622, -921.9564497881041, -3207.2623320318057, 				35013.212885108, 79396.41251541644, -210074.69638666182, -63286.85892570783, 5099.100595618962, -35045.66981065975, 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -