Skip to content

Commit bc1de53

Browse files
committed
error related to the initial point of the eSS found
1 parent 01c1165 commit bc1de53

File tree

3 files changed

+17
-2
lines changed

3 files changed

+17
-2
lines changed

example-files/lotka_volterra_ess_serial_config.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@
5858
<ub>
5959
1.000, 1.000, 1.000, 1.000
6060
</ub>
61-
<initial_point>
61+
<point>
6262
0.3, 0.3, 0.3, 0.3
63-
</initial_point>
63+
</point>
6464
</problem>
6565

6666
</xml>

modules/cuqdyn-c/src/cuqdyn.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,18 @@ CuqdynResult *cuqdyn_algo(const char *data_file, const char *sacess_conf_file,
7777
{
7878
resid_loo = NewDenseMatrix(m, n);
7979
predicted_params_matrix = NewDenseMatrix(m, config->ode_expr.p_count);
80+
81+
N_Vector init_vals = New_Serial(NV_LENGTH_S(initial_values));
82+
memcpy(NV_DATA_S(init_vals), NV_DATA_S(initial_values), NV_LENGTH_S(initial_values) * sizeof(sunrealtype));
83+
84+
N_Vector texp = copy_vector_remove_indices(times, create_array((long[]) {}, 0));
85+
86+
SUNMatrix yexp = copy_matrix_remove_rows(observed_data, create_array((long[]) {}, 0));
87+
88+
N_Vector predicted_params =
89+
execute_ess_solver(sacess_conf_file, output_file, texp, yexp, init_vals, rank, nproc);
90+
91+
8092
}
8193

8294
#ifdef MPI

modules/sacess/src/input_module/input_module.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1025,6 +1025,7 @@ int extract_element_problem(xmlDocPtr doc, xmlNodePtr *root, experiment_total *e
10251025
}
10261026

10271027
// INIT POINT
1028+
printf("asdfasdf");
10281029
if (extract_element_uniq(doc, cur, name_sol) != NULL){
10291030
test->bench.number_init_sol = count_element_multi(doc, cur, name_sol);
10301031

@@ -1036,12 +1037,14 @@ int extract_element_problem(xmlDocPtr doc, xmlNodePtr *root, experiment_total *e
10361037
vector_char[i] = (char *) malloc(100000* sizeof(char));
10371038
test->bench.X0[i] = (double *) malloc(test->bench.dim*sizeof(double));
10381039
}
1040+
10391041
extract_element_multi(doc,cur,name_sol,vector_char);
10401042
for (i=0;i<test->bench.number_init_sol;i++) {
10411043
counter=0;
10421044
pt = strtok (vector_char[i],",");
10431045
while (pt != NULL) {
10441046
test->bench.X0[i][counter] = atof(pt);
1047+
printf("%lf", test->bench.X0[i][counter]);
10451048
pt = strtok (NULL, ",");
10461049
counter++;
10471050
}

0 commit comments

Comments
 (0)