All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ejml.data.Complex64F Maven / Gradle / Ivy

Go to download

A fast and easy to use dense matrix linear algebra library written in Java.

There is a newer version: 0.25
Show newest version
/*
 * Copyright (c) 2009-2013, Peter Abeles. All Rights Reserved.
 *
 * This file is part of Efficient Java Matrix Library (EJML).
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.ejml.data;

import java.io.Serializable;

/**
 * 

* Represents a complex number using 64bit floating point numbers. A complex number is composed of * a real and imaginary components. *

*/ public class Complex64F implements Serializable { public double real; public double imaginary; public Complex64F(double real, double imaginary) { this.real = real; this.imaginary = imaginary; } public Complex64F() { } public double getReal() { return real; } public double getMagnitude() { return Math.sqrt(real*real + imaginary*imaginary); } public double getMagnitude2() { return real*real + imaginary*imaginary; } public void setReal(double real) { this.real = real; } public double getImaginary() { return imaginary; } public void setImaginary(double imaginary) { this.imaginary = imaginary; } public void set(double real, double imaginary) { this.real = real; this.imaginary = imaginary; } public boolean isReal() { return imaginary == 0.0; } public String toString() { if( imaginary == 0 ) { return ""+real; } else { return real+" "+imaginary+"i"; } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy