BLDC motor

It's important first to understand BLPM motors. There are several types that operate in a different way and some very good text books on the topic are Hendershot & Miller (2010) or Hanselman (2004).

If you deal with radial flux BLPM motors, anaytical packages such PC-BDC (SPEED) can give you very good results for surface PM motors, while for interior PM motors FEA is absolutely necessary, e.g. PC-FEA which is embedded in SPEED . Most of the finite-element packages will give you similar results, difference is made in price, computation time and easiness of usage.
Last, but not least, thermal aspects in BLPM are usually neglected even though magnets will demagnetise with temperature leading to higher current and lower efficiency for the same output. FEA will fail to give you a good estimation of the motor thermal behavior being capable of modelling just conduction. MotorCAD can solve the thermal problems and is linked to SPEED.
For axial flux motor you will need to go into 3D FEA. There are several analytical approaches developed at various Universities worldwide.

There are a lot of subtleties to designing BLPM motors, some not immediately obvious, particularly if you want an IPM motor with wide field weakening or something. It is often easy to get something that will do, but hard to get a really good design that is high efficiency and maximizes the material. FEA software, even ones with front ends for entering geometrical data, will have more limited options and gives one answer; the time it takes to vary parameters and formulate an effective design can be very long. SPEED is a spreadsheet entry package with many powerful design options and routines, It is by far more sophisticated than any of the FEA packages in terms of design variety. RMXpert is simply an FEA bolt on.
BLDC was coined as when using the standard "six step" energisation it really is very similar to the action carried out by the commutator in a brushed motor. The motor is of course an AC motor but in terms of the BEMF waveform shape it MAY (underlined!!) have been designed with a more trapezoidal BEMF which CAN (underlined!!) give a smoother torque compared with a sine BEMF and six step energisation.

The current through the windings can be anything you want. Preferably you are driving a synchronous motor (that is NOT BLDC) with a sinusoidal current to get a sinusoidal voltage across the windings, what the synchronous motor is designed for. The current through the BLDC motor usually has the form of a "modified" square wave. The current through each winding is either steady positive, zero or steady negative. It is during the zero period you read the BEMF from that winding to establish the rotor location for a sensorless BLDC so you (that is the controller) can switch the current through the windings at the right time.
A BLDC motor may have a trapezoidal Back EMF, there is something called Trapezoidal Motor Control Methodalogy (TRZ). TRZ is an extension of 6-step control with additional switching states generated to allow winding current to ramp up/down in each phase prior to/after each commutation instant. Trapezoidal motor winding currents, achieve a low noise performance.

Brushless DC motors are generally, although not always, three phase devices. They are wired in either a Y (Wye, Star, T) or Δ (Delta) configuration, but in either case there are three connecting wires, and the current input to any two coils must be output through the third. That is,

C = –(A + B) where A, B, and C are the current flowing through each leg of the 3-phase brushless motor.
serviceServo Motor & Drives