void lis_matrix_create_f(LIS_Comm_f *comm, LIS_MATRIX_F *Amat, LIS_INT *ierr)
{
	LIS_MATRIX			A;
	LIS_Comm			c_comm;

	LIS_DEBUG_FUNC_IN;

	#ifdef USE_MPI
		if( *comm==lis_comm_world_f )
		{
			c_comm = MPI_COMM_WORLD;
		}
		else
		{
			c_comm = MPI_Comm_f2c(*comm);
		}
	#else
		c_comm = *comm;
	#endif

	*ierr = lis_matrix_create(c_comm,&A);
	if( *ierr )	return;

	A->origin = LIS_ORIGIN_1;
	*Amat = LIS_P2V(A);
	LIS_DEBUG_FUNC_OUT;
	return;
}
Esempio n. 2
0
void lis_vector_create_f(LIS_Comm_f *comm, LIS_VECTOR_F *vec, LIS_INT *ierr)
{
	LIS_VECTOR v;
	LIS_Comm c_comm;

	LIS_DEBUG_FUNC_IN;

	#ifdef USE_MPI
		if( *comm==lis_comm_world_f )
		{
			c_comm = MPI_COMM_WORLD;
		}
		else
		{
			c_comm = MPI_Comm_f2c(*comm);
		}
	#else
		c_comm = *comm;
	#endif
	*ierr = lis_vector_create(c_comm,&v);
	if( *ierr )	return;

	v->origin = LIS_ORIGIN_1;

	*vec = LIS_P2V(v);
	LIS_DEBUG_FUNC_OUT;
	return;
}
void lis_matrix_duplicate_f(LIS_MATRIX_F *Ain, LIS_MATRIX_F *Aout, LIS_INT *ierr)
{
	LIS_MATRIX	A;

	LIS_DEBUG_FUNC_IN;

	*ierr = lis_matrix_duplicate((LIS_MATRIX)LIS_V2P(Ain),&A);
	*Aout = LIS_P2V(A);

	LIS_DEBUG_FUNC_OUT;
	return;
}
void lis_esolver_create_f(LIS_ESOLVER_F *esolver, LIS_INT *ierr)
{
	LIS_ESOLVER	s;

	LIS_DEBUG_FUNC_IN;

	*ierr = lis_esolver_create(&s);
	if( *ierr )	return;

	*esolver = LIS_P2V(s);
	LIS_DEBUG_FUNC_OUT;
	return;
}
void lis_matrix_assemble_f(LIS_MATRIX_F *A, LIS_INT *ierr)
{
	LIS_MATRIX AA;

	LIS_DEBUG_FUNC_IN;

	AA    = (LIS_MATRIX)LIS_V2P(A);
	*ierr = lis_matrix_assemble(AA);
	*A    = LIS_P2V(AA);

	LIS_DEBUG_FUNC_OUT;
	return;
}
Esempio n. 6
0
void lis_vector_duplicate_f(LIS_VECTOR_F *vin, LIS_VECTOR_F *vout, LIS_INT *ierr)
{
	LIS_VECTOR v;

	LIS_DEBUG_FUNC_IN;

	*ierr = lis_vector_duplicate((LIS_VECTOR)LIS_V2P(vin),&v);
	if( *ierr )	return;
	*vout = LIS_P2V(v);

	LIS_DEBUG_FUNC_OUT;
	return;
}
void lis_matrix_convert_f(LIS_MATRIX_F *Ain, LIS_MATRIX_F *Aout, LIS_INT *ierr)
{
	LIS_MATRIX AAin,AAout;

	LIS_DEBUG_FUNC_IN;

	AAin    = (LIS_MATRIX)LIS_V2P(Ain);
	AAout   = (LIS_MATRIX)LIS_V2P(Aout);
	*ierr   = lis_matrix_convert(AAin,AAout);
	*Aout   = LIS_P2V(AAout);

	LIS_DEBUG_FUNC_OUT;
	return;
}