1
- /*
2
- * alienc.h
3
- *
4
- * Created on: Nov 25, 2020
5
- * Author: gratienj
6
- */
7
-
8
-
1
+ // -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2
+ // -----------------------------------------------------------------------------
3
+ // Copyright 2000-2024 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4
+ // See the top-level COPYRIGHT file for details.
5
+ // SPDX-License-Identifier: Apache-2.0
6
+ // -----------------------------------------------------------------------------
7
+ /* ---------------------------------------------------------------------------*/
8
+ /* alienc (C) 2000-2024 */
9
+ /* */
10
+ /* Interface C for alien */
11
+ /* ---------------------------------------------------------------------------*/
12
+ /* ---------------------------------------------------------------------------*/
9
13
#include < mpi.h>
10
14
#include < assert.h>
11
15
#include < memory>
@@ -540,28 +544,28 @@ extern "C" {
540
544
541
545
#include " alien/c/alienc.h"
542
546
543
- ALIEN_INTERFACE_C_EXPORT int ALIEN_init ([[maybe_unused]] int argc,[[maybe_unused]] char ** argv)
547
+ int ALIEN_init (int argc, char ** argv)
544
548
{
545
549
AlienManager::initialize () ;
546
550
return 0 ;
547
551
}
548
552
549
- ALIEN_INTERFACE_C_EXPORT int ALIEN_create_linear_system (MPI_Comm comm)
553
+ int ALIEN_create_linear_system (MPI_Comm comm)
550
554
{
551
555
auto * alien_mng = AlienManager::instance () ;
552
556
assert (alien_mng!=nullptr ) ;
553
557
return alien_mng->createNewLinearSystem (comm) ;
554
558
}
555
559
556
- ALIEN_INTERFACE_C_EXPORT int ALIEN_destroy_linear_system (int system_id)
560
+ int ALIEN_destroy_linear_system (int system_id)
557
561
{
558
562
auto * alien_mng = AlienManager::instance () ;
559
563
assert (alien_mng!=nullptr ) ;
560
564
return alien_mng->destroyLinearSystem (system_id) ;
561
565
}
562
566
563
567
564
- ALIEN_INTERFACE_C_EXPORT int ALIEN_init_linear_system (int system_id,
568
+ int ALIEN_init_linear_system (int system_id,
565
569
int global_nrows,
566
570
int local_nrows,
567
571
uid_type* row_uids,
@@ -583,7 +587,7 @@ extern "C" {
583
587
return 0 ;
584
588
}
585
589
586
- ALIEN_INTERFACE_C_EXPORT int ALIEN_define_matrix_profile (int system_id,
590
+ int ALIEN_define_matrix_profile (int system_id,
587
591
int local_nrows,
588
592
uid_type* row_uids,
589
593
int * row_offset,
@@ -600,7 +604,7 @@ extern "C" {
600
604
return 0 ;
601
605
}
602
606
603
- ALIEN_INTERFACE_C_EXPORT int ALIEN_set_matrix_values (int system_id,
607
+ int ALIEN_set_matrix_values (int system_id,
604
608
int local_nrows,
605
609
uid_type* row_uids,
606
610
int * row_offset,
@@ -620,7 +624,7 @@ extern "C" {
620
624
return 0 ;
621
625
}
622
626
623
- ALIEN_INTERFACE_C_EXPORT int ALIEN_set_rhs_values (int system_id,
627
+ int ALIEN_set_rhs_values (int system_id,
624
628
int local_nrows,
625
629
uid_type* row_uids,
626
630
double const * values)
@@ -633,7 +637,7 @@ extern "C" {
633
637
return 0 ;
634
638
}
635
639
636
- ALIEN_INTERFACE_C_EXPORT int ALIEN_get_solution_values (int system_id,
640
+ int ALIEN_get_solution_values (int system_id,
637
641
int local_nrows,
638
642
uid_type* row_uids,
639
643
double * values)
@@ -646,15 +650,15 @@ extern "C" {
646
650
return 0 ;
647
651
}
648
652
649
- ALIEN_INTERFACE_C_EXPORT int ALIEN_create_solver (MPI_Comm comm,const char * config_file)
653
+ int ALIEN_create_solver (MPI_Comm comm,const char * config_file)
650
654
{
651
655
auto * alien_mng = AlienManager::instance () ;
652
656
assert (alien_mng!=nullptr ) ;
653
657
return alien_mng->createNewLinearSolver (comm,config_file) ;
654
658
}
655
659
656
660
657
- ALIEN_INTERFACE_C_EXPORT int ALIEN_init_solver (int solver_id,int argc, char ** argv)
661
+ int ALIEN_init_solver (int solver_id,int argc, char ** argv)
658
662
{
659
663
auto * alien_mng = AlienManager::instance () ;
660
664
assert (alien_mng!=nullptr ) ;
@@ -664,7 +668,7 @@ extern "C" {
664
668
}
665
669
666
670
667
- ALIEN_INTERFACE_C_EXPORT int ALIEN_init_solver_with_configfile (int solver_id,const char * path)
671
+ int ALIEN_init_solver_with_configfile (int solver_id,const char * path)
668
672
{
669
673
auto * alien_mng = AlienManager::instance () ;
670
674
assert (alien_mng!=nullptr ) ;
@@ -674,15 +678,15 @@ extern "C" {
674
678
return 0 ;
675
679
}
676
680
677
- ALIEN_INTERFACE_C_EXPORT int ALIEN_destroy_solver (int solver_id)
681
+ int ALIEN_destroy_solver (int solver_id)
678
682
{
679
683
auto * alien_mng = AlienManager::instance () ;
680
684
assert (alien_mng!=nullptr ) ;
681
685
alien_mng->destroyLinearSolver (solver_id) ;
682
686
return 0 ;
683
687
}
684
688
685
- ALIEN_INTERFACE_C_EXPORT int ALIEN_solve (int solver_id, int system_id)
689
+ int ALIEN_solve (int solver_id, int system_id)
686
690
{
687
691
auto * alien_mng = AlienManager::instance () ;
688
692
assert (alien_mng!=nullptr ) ;
@@ -693,7 +697,7 @@ extern "C" {
693
697
return solver->solve (system ->getA (),system ->getB (),system ->getX ()) ;
694
698
}
695
699
696
- ALIEN_INTERFACE_C_EXPORT int ALIEN_get_solver_status (int solver_id, ALIEN_Solver_Status* status)
700
+ int ALIEN_get_solver_status (int solver_id, ALIEN_Solver_Status* status)
697
701
{
698
702
auto * alien_mng = AlienManager::instance () ;
699
703
assert (alien_mng!=nullptr ) ;
@@ -702,7 +706,7 @@ extern "C" {
702
706
return 0 ;
703
707
}
704
708
705
- ALIEN_INTERFACE_C_EXPORT int ALIEN_finalize ()
709
+ int ALIEN_finalize ()
706
710
{
707
711
AlienManager::finalize () ;
708
712
return 0 ;
0 commit comments