--- src/mixture_redraw_functions.cpp 2023-10-30 03:45:31.000000000 +0800 +++ src/mixture_redraw_functions.cpp 2024-01-28 17:01:00.000000000 +0800 @@ -15,7 +15,7 @@ double calc_logprob_Gibbs_comp(const arma::mat& current_precision, const arma::vec& current_mu, const arma::vec& regime_comp_log_probs, const arma::mat& current_data, int proposed_component) { double log_prob = 0; - if(isnan(regime_comp_log_probs.at(proposed_component)) ){ + if(std::isnan(regime_comp_log_probs.at(proposed_component)) ){ log_prob = -std::numeric_limits::infinity(); } else { log_prob = (double)arma::as_scalar(regime_comp_log_probs.at(proposed_component)) + @@ -69,7 +69,7 @@ prob_first = exp(log_prob_first)/(exp(log_prob_first)+exp(log_prob_second)); prob_second = exp(log_prob_second)/(exp(log_prob_first)+exp(log_prob_second)); unif_draw = arma::randu(); - if(isnan(prob_first)){ + if(std::isnan(prob_first)){ assignments_launch.at(data_value_index-1) = first_component; continue; @@ -130,11 +130,11 @@ exp_distribution = exp(log_prob_of_each_comp); total_density_values = accu(exp_distribution); - if(isnan(total_density_values)){ + if(std::isnan(total_density_values)){ continue; } rand_value = arma::randu() * total_density_values; - if(isnan(rand_value)){ + if(std::isnan(rand_value)){ continue; } sum_density_values = 0;