ComplexNumericRTable.copyImaginary - create and return a copy of the imaginary values of the current ComplexNumericRTable
|
Calling Sequence
|
|
NumericRTable copyImaginary( ) throws MapleException
|
|
Description
|
|
•
|
The copyImaginary function creates and returns a new NumericRTable that contains the imaginary components of each element of the current ComplexNumericRTable.
|
•
|
As RTables do not have unique representations, the returned copy is a different Maple object from the original. Therefore changes to the copy do not affect the original.
|
|
|
Examples
|
|
import com.maplesoft.openmaple.*;
|
import com.maplesoft.externalcall.MapleException;
|
class Example
|
{
|
public static void main( String notused[] ) throws MapleException
|
{
|
String mapleArgs[];
|
Engine engine;
|
ComplexNumericRTable cnRt, iCopy;
|
ComplexNumeric cn;
|
int index[];
|
mapleArgs = new String[1];
|
mapleArgs[0] = "java";
|
engine = new Engine( mapleArgs, new EngineCallBacksDefault(),
|
null, null );
|
cnRt = (ComplexNumericRTable)engine.evaluate( "Array( 1..2, 1..2, [[1+I, 2+2*I],[3+3*I, 4+4*I]], datatype=complex(sfloat) ):" );
|
iCopy = cnRt.copyImaginary();
|
System.out.println( cnRt );
|
System.out.println( iCopy );
|
index = new int[2];
|
index[0] = 1;
|
index[1] = 1;
|
cn = (ComplexNumeric)engine.evaluate( "10+5*I:" );
|
iCopy.assign( index, cn );
|
System.out.println( cnRt );
|
System.out.println( iCopy );
|
}
|
}
|
|
|
Executing this code produces the following output.
Array(1..2, 1..2, [[1.+1.*I,2.+2.*I],[3.+3.*I,4.+4.*I]], datatype =
|
complex(sfloat), storage = rectangular, order = Fortran_order)
|
Array(1..2, 1..2, [[1.+0.*I,2.+0.*I],[3.+0.*I,4.+0.*I]], datatype =
|
complex(sfloat), storage = rectangular, order = Fortran_order)
|
Array(1..2, 1..2, [[1.+1.*I,2.+2.*I],[3.+3.*I,4.+4.*I]], datatype =
|
complex(sfloat), storage = rectangular, order = Fortran_order)
|
Array(1..2, 1..2, [[10.+5.*I,2.+0.*I],[3.+0.*I,4.+0.*I]], datatype =
|
complex(sfloat), storage = rectangular, order = Fortran_order)
|
|
|
|
|