Index

C++ Code Documentation

surflab::kernel::Lab

Derived from: lab::kernel::Lab , ::surflab::ui::Ui

File: LAB/surflab/kernel/Lab.H

Computes parametrized surfaces in R^2, R^3 or R^4.

public:
  • typedef ::lab::kernel::Real Real;
  • typedef ::lab::kernel::Complex Complex;
  • Lab();
    constructor
  • virtual ~Lab();
    destructor
protected:
  • virtual parser::KeyParser const &data() const;
  • virtual parser::KeyParser &data();
  • virtual char const *lab_name() const;
  • virtual char const *about_info() const;
  • virtual char const *env_lib_path() const;
  • virtual char const *env_help_url() const;
  • virtual void set_ui_from_data();
  • virtual void set_data_from_ui();
  • virtual void set_state_from_data();
private:
  • void function( base::vector<Real> &y, std::complex<double> const &z, uint thread_id ) throw ( base::Exception );
  • virtual std::complex<double> zstart_v() const;
  • virtual void start_all_v( uint vertex_count, uint edge_count, uint thread_count );
  • virtual void end_all_v( uint vertex_count, uint edge_count, uint thread_count);
  • virtual void start_v( std::complex<Real> const &z0, uint k0, uint thread_id );
  • virtual void step_v( std::complex<Real> const &z0, std::complex<Real> const &z1, uint k0, uint k1, uint thread_id );
  • virtual void end_v();
  • virtual void export_fn_v( base::vector<Real> &v, uint k );
  • Data _data;
  • struct MultiData;
    one for each point on the surface
  • math::VectorX<Real,2U> _domain;
  • base::vector<Real> _surface;
    one for each dimension
  • };
  • base::vector<MultiData> _multidata;
  • struct MultiOp;
    one for each thread
  • base::vector<MultiOp> _multiop;
  • base::vector<eval::Expression< std::complex<double> > > _surf_expr0;
  • base::String _varname1, _varname2;
  • static char const *_about_info;
  • Lab( Lab const & );
    disabled copy constructor
  • Lab & operator=( Lab const & );
    disabled assignment operator


surflab::kernel::Lab GANG