test/ssc_test/cmod_tcsmolten_salt_test.cpp
/// Test tcsmolten_salt with alternative turbine inlet pressure control: Sliding pressure
/// Rest default configurations with respect to the single owner financial model
Test tcsmolten_salt with alternative turbine inlet pressure control: Sliding pressure
Rest default configurations with respect to the single owner financial model
Test tcsmolten_salt with alternative turbine inlet pressure control : Sliding pressure Rest default configurations with respect to the single owner financial model
TEST_F(CMTcsMoltenSalt, Rankine_Sliding_P_SingleOwner_cmod_tcsmolten_salt) {
	ssc_data_t data = ssc_data_create();
	int test_errors = tcsmolten_salt_daggett_sliding_pressure(data);
	EXPECT_FALSE(test_errors);
	if (!test_errors)
	{
		ssc_number_t annual_energy;
		ssc_data_get_number(data, "annual_energy", &annual_energy);
		EXPECT_NEAR(annual_energy, 576302445.677569, 576302445.677569 * m_error_tolerance_hi) << "Annual Energy";  
		ssc_number_t land_area_base;
		ssc_data_get_number(data, "land_area_base", &land_area_base);
		EXPECT_NEAR(land_area_base, 1847.040000, 1847.040000 * m_error_tolerance_hi) << "Land Area Base";  
		ssc_number_t capacity_factor;
		ssc_data_get_number(data, "capacity_factor", &capacity_factor);
		EXPECT_NEAR(capacity_factor, 63.563237, 63.563237 * m_error_tolerance_hi) << "Capacity Factor";  
		ssc_number_t annual_W_cycle_gross;
		ssc_data_get_number(data, "annual_W_cycle_gross", &annual_W_cycle_gross);
		EXPECT_NEAR(annual_W_cycle_gross, 647174668.052062, 647174668.052062 * m_error_tolerance_hi) << "Annual W_cycle Gross";  
		ssc_number_t kwh_per_kw;
		ssc_data_get_number(data, "kwh_per_kw", &kwh_per_kw);
		EXPECT_NEAR(kwh_per_kw, 5568.139572, 5568.139572 * m_error_tolerance_hi) << "kwh per kw";  
		ssc_number_t conversion_factor;
		ssc_data_get_number(data, "conversion_factor", &conversion_factor);
		EXPECT_NEAR(conversion_factor, 89.048981, 89.048981 * m_error_tolerance_hi) << "Conversion Factor";  
		ssc_number_t N_hel;
		ssc_data_get_number(data, "N_hel", &N_hel);
		EXPECT_NEAR(N_hel, 8790, 8790 * m_error_tolerance_hi) << "Number of Heliostats";  
		ssc_number_t rec_height;
		ssc_data_get_number(data, "rec_height", &rec_height);
		EXPECT_NEAR(rec_height, 21.602900, 21.602900 * m_error_tolerance_hi) << "Rec Height";  
		ssc_number_t A_sf;
		ssc_data_get_number(data, "A_sf", &A_sf);
		EXPECT_NEAR(A_sf, 1269054.492000, 1269054.492000 * m_error_tolerance_hi) << "Solar Field Area";  
		ssc_number_t D_rec;
		ssc_data_get_number(data, "D_rec", &D_rec);
		EXPECT_NEAR(D_rec, 17.650000, 17.650000 * m_error_tolerance_hi) << "Receiver Outer Diameter";  
		ssc_number_t annual_total_water_use;
		ssc_data_get_number(data, "annual_total_water_use", &annual_total_water_use);
		EXPECT_NEAR(annual_total_water_use, 98238.031245, 98238.031245 * m_error_tolerance_hi) << "Annual Total Water Use";  
		ssc_number_t csp_pt_cost_total_land_area;
		ssc_data_get_number(data, "csp.pt.cost.total_land_area", &csp_pt_cost_total_land_area);
		EXPECT_NEAR(csp_pt_cost_total_land_area, 1892.040000, 1892.040000 * m_error_tolerance_hi) << "Total Land Area";  
		ssc_number_t h_tower;
		ssc_data_get_number(data, "h_tower", &h_tower);
		EXPECT_NEAR(h_tower, 193.458000, 193.458000 * m_error_tolerance_hi) << "Tower Height";  
		//EXPECT_NEAR(VARIABLE, EXP_VAL, EXP_VAL * m_error_tolerance_hi) << "DESCRIPTION";  
	}
}
TEST_F ( CMTcsMoltenSalt , Rankine_Sliding_P_SingleOwner_cmod_tcsmolten_salt ) { ssc_data_t data = ssc_data_create ( ) ; int test_errors = tcsmolten_salt_daggett_sliding_pressure ( data ) ; EXPECT_FALSE ( test_errors ) ; if ( ! test_errors ) { ssc_number_t annual_energy ; ssc_data_get_number ( data , " " , & annual_energy ) ; EXPECT_NEAR ( annual_energy , 576302445.677569 , 576302445.677569 * m_error_tolerance_hi ) << " " ; ssc_number_t land_area_base ; ssc_data_get_number ( data , " " , & land_area_base ) ; EXPECT_NEAR ( land_area_base , 1847.040000 , 1847.040000 * m_error_tolerance_hi ) << " " ; ssc_number_t capacity_factor ; ssc_data_get_number ( data , " " , & capacity_factor ) ; EXPECT_NEAR ( capacity_factor , 63.563237 , 63.563237 * m_error_tolerance_hi ) << " " ; ssc_number_t annual_W_cycle_gross ; ssc_data_get_number ( data , " " , & annual_W_cycle_gross ) ; EXPECT_NEAR ( annual_W_cycle_gross , 647174668.052062 , 647174668.052062 * m_error_tolerance_hi ) << " " ; ssc_number_t kwh_per_kw ; ssc_data_get_number ( data , " " , & kwh_per_kw ) ; EXPECT_NEAR ( kwh_per_kw , 5568.139572 , 5568.139572 * m_error_tolerance_hi ) << " " ; ssc_number_t conversion_factor ; ssc_data_get_number ( data , " " , & conversion_factor ) ; EXPECT_NEAR ( conversion_factor , 89.048981 , 89.048981 * m_error_tolerance_hi ) << " " ; ssc_number_t N_hel ; ssc_data_get_number ( data , " " , & N_hel ) ; EXPECT_NEAR ( N_hel , 8790 , 8790 * m_error_tolerance_hi ) << " " ; ssc_number_t rec_height ; ssc_data_get_number ( data , " " , & rec_height ) ; EXPECT_NEAR ( rec_height , 21.602900 , 21.602900 * m_error_tolerance_hi ) << " " ; ssc_number_t A_sf ; ssc_data_get_number ( data , " " , & A_sf ) ; EXPECT_NEAR ( A_sf , 1269054.492000 , 1269054.492000 * m_error_tolerance_hi ) << " " ; ssc_number_t D_rec ; ssc_data_get_number ( data , " " , & D_rec ) ; EXPECT_NEAR ( D_rec , 17.650000 , 17.650000 * m_error_tolerance_hi ) << " " ; ssc_number_t annual_total_water_use ; ssc_data_get_number ( data , " " , & annual_total_water_use ) ; EXPECT_NEAR ( annual_total_water_use , 98238.031245 , 98238.031245 * m_error_tolerance_hi ) << " " ; ssc_number_t csp_pt_cost_total_land_area ; ssc_data_get_number ( data , " " , & csp_pt_cost_total_land_area ) ; EXPECT_NEAR ( csp_pt_cost_total_land_area , 1892.040000 , 1892.040000 * m_error_tolerance_hi ) << " " ; ssc_number_t h_tower ; ssc_data_get_number ( data , " " , & h_tower ) ; EXPECT_NEAR ( h_tower , 193.458000 , 193.458000 * m_error_tolerance_hi ) << " " ; } }
Test tcsmolten_salt with alternative turbine inlet pressure control: Sliding pressure
Rest default configurations with respect to the single owner financial model
Test tcsmolten_salt with alternative turbine inlet pressure control : Sliding pressure Rest default configurations with respect to the single owner financial model
// choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi // choose either m_error_tolerance_lo or m_error_tolerance_hi //ssc_number_t VARIABLE; //ssc_data_get_number(data, "VARIABLE", &VARIABLE); //EXPECT_NEAR(VARIABLE, EXP_VAL, EXP_VAL * m_error_tolerance_hi) << "DESCRIPTION";  // choose either m_error_tolerance_lo or m_error_tolerance_hi